1 /* 2 3 Copyright 2001 The Apache Software Foundation 4 5 Licensed under the Apache License, Version 2.0 (the "License"); 6 you may not use this file except in compliance with the License. 7 You may obtain a copy of the License at 8 9 http://www.apache.org/licenses/LICENSE-2.0 10 11 Unless required by applicable law or agreed to in writing, software 12 distributed under the License is distributed on an "AS IS" BASIS, 13 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 See the License for the specific language governing permissions and 15 limitations under the License. 16 17 */ 18 package org.apache.batik.svggen; 19 20 import java.awt.Rectangle; 21 import java.awt.image.BufferedImageOp; 22 import java.util.List; 23 24 /** 25 * Defines the interface for classes that are able to convert 26 * a BufferedImageOp filter. 27 * 28 * @author <a HREF="mailto:vincent.hardy@eng.sun.com">Vincent Hardy</a> 29 * @version $Id: SVGFilterConverter.java,v 1.7 2005/03/27 08:58:35 cam Exp $ 30 * @see org.apache.batik.svggen.SVGFilterDescriptor 31 */ 32 public interface SVGFilterConverter extends SVGSyntax { 33 /** 34 * Converts a Java 2D API BufferedImageOp into 35 * a set of attribute/value pairs and related definitions 36 * 37 * @param filter BufferedImageOp filter to be converted 38 * @param filterRect Rectangle, in device space, that defines the area 39 * to which filtering applies. May be null, meaning that the 40 * area is undefined. 41 * @return descriptor of the attributes required to represent 42 * the input filter 43 * @see org.apache.batik.svggen.SVGFilterDescriptor 44 */ 45 public SVGFilterDescriptor toSVG(BufferedImageOp filter, Rectangle filterRect); 46 47 /** 48 * @return set of definitions referenced by the attribute 49 * values created by the implementation since its 50 * creation. The return value should never be null. 51 * If no definition is needed, an empty set should be 52 * returned. 53 */ 54 public List getDefinitionSet(); 55 } 56