| /* |
| * Licensed to the Apache Software Foundation (ASF) under one or more |
| * contributor license agreements. See the NOTICE file distributed with |
| * this work for additional information regarding copyright ownership. |
| * The ASF licenses this file to You under the Apache License, Version 2.0 |
| * (the "License"); you may not use this file except in compliance with |
| * the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software |
| * distributed under the License is distributed on an "AS IS" BASIS, |
| * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| * See the License for the specific language governing permissions and |
| * limitations under the License. |
| */ |
| |
| /* $Id$ */ |
| |
| package org.apache.fop.render.afp; |
| |
| import java.net.URI; |
| |
| import org.apache.fop.afp.AFPResourceLevelDefaults; |
| |
| /** |
| * Interface used to customize the AFP renderer or document handler. |
| */ |
| public interface AFPCustomizable { |
| |
| /** |
| * Sets the number of bits used per pixel |
| * |
| * @param bitsPerPixel |
| * number of bits per pixel |
| */ |
| void setBitsPerPixel(int bitsPerPixel); |
| |
| /** |
| * Sets whether images are color or not |
| * |
| * @param colorImages |
| * color image output |
| */ |
| void setColorImages(boolean colorImages); |
| |
| /** |
| * Sets whether images are supported natively or not |
| * |
| * @param nativeImages |
| * native image support |
| */ |
| void setNativeImagesSupported(boolean nativeImages); |
| |
| /** |
| * Controls whether CMYK images (IOCA FS45) are enabled. By default, support is disabled |
| * for wider compatibility. When disabled, any CMYK image is converted to the selected |
| * color format. |
| * @param value true to enabled CMYK images |
| */ |
| void setCMYKImagesSupported(boolean value); |
| |
| /** |
| * Sets the shading mode for painting filled rectangles. |
| * @param shadingMode the shading mode |
| */ |
| void setShadingMode(AFPShadingMode shadingMode); |
| |
| /** |
| * Sets the dithering quality setting to use when converting images to monochrome images. |
| * @param quality Defines the desired quality level for the conversion. |
| * Valid values: a value between 0.0f (fastest) and 1.0f (best) |
| */ |
| void setDitheringQuality(float quality); |
| |
| /** |
| * Sets the image encoding quality setting to use when encoding bitmap images. |
| * The default setting is 1.0 which means loss-less encoding. Settings of less than 1.0 |
| * allow loss-less encoding schemes like JPEG. The value serves as quality setting for |
| * the encoders in that case. |
| * @param quality Defines the desired quality level. |
| * Valid values: a value between 0.0f (lowest) and 1.0f (best, loss-less) |
| */ |
| void setBitmapEncodingQuality(float quality); |
| |
| /** |
| * Sets the output/device resolution |
| * |
| * @param resolution |
| * the output resolution (dpi) |
| */ |
| void setResolution(int resolution); |
| |
| /** |
| * Sets the line width correction |
| * |
| * @param correction the line width multiplying factor correction |
| */ |
| void setLineWidthCorrection(float correction); |
| |
| /** |
| * Sets whether FS11 and FS45 non-inline images should be wrapped in a page segment |
| * @param pSeg true iff images should be wrapped |
| */ |
| void setWrapPSeg(boolean pSeg); |
| |
| /** |
| * set true if images should be FS45 |
| * @param fs45 true iff images should be FS45 |
| */ |
| void setFS45(boolean fs45); |
| |
| /** |
| * gets whether FS11 and FS45 non-inline images should be wrapped in a page segment |
| * @return true iff images should be wrapped |
| */ |
| boolean getWrapPSeg(); |
| |
| /** |
| * gets whether images should be FS45 |
| * @return true iff images should be FS45 |
| */ |
| boolean getFS45(); |
| |
| /** |
| * Returns the output/device resolution. |
| * |
| * @return the resolution in dpi |
| */ |
| int getResolution(); |
| |
| /** |
| * Controls whether GOCA is enabled or disabled. |
| * @param enabled true if GOCA is enabled, false if it is disabled |
| */ |
| void setGOCAEnabled(boolean enabled); |
| |
| /** |
| * Indicates whether GOCA is enabled or disabled. |
| * @return true if GOCA is enabled, false if GOCA is disabled |
| */ |
| boolean isGOCAEnabled(); |
| |
| /** |
| * Controls whether to stroke text in GOCA mode or to use text operators where possible. |
| * @param stroke true to stroke, false to paint with text operators where possible |
| */ |
| void setStrokeGOCAText(boolean stroke); |
| |
| /** |
| * Indicates whether to stroke text in GOCA mode or to use text operators where possible. |
| * @return true to stroke, false to paint with text operators where possible |
| */ |
| boolean isStrokeGOCAText(); |
| |
| /** |
| * Sets the default resource group URI |
| * @param uri the default resource group URI |
| */ |
| void setDefaultResourceGroupUri(URI uri); |
| |
| /** |
| * Sets the resource level defaults. The object passed in provides information which resource |
| * level shall be used by default for various kinds of resources. |
| * @param defaults the resource level defaults |
| */ |
| void setResourceLevelDefaults(AFPResourceLevelDefaults defaults); |
| |
| /** |
| * Sets whether or not to JPEG images can be embedded in the AFP document. |
| * |
| * @param canEmbed whether or not to embed JPEG image |
| */ |
| void canEmbedJpeg(boolean canEmbed); |
| |
| } |