123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133 |
- /*
- * 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.bitmap;
-
- import org.apache.xmlgraphics.image.writer.ImageWriterParams;
-
- import org.apache.fop.render.java2d.Java2DRenderingSettings;
-
- import static org.apache.fop.render.bitmap.BitmapRendererOption.ANTI_ALIASING;
- import static org.apache.fop.render.bitmap.BitmapRendererOption.COLOR_MODE;
- import static org.apache.fop.render.bitmap.BitmapRendererOption.RENDERING_QUALITY;
-
- /**
- * This class holds settings used when rendering to bitmaps.
- */
- public class BitmapRenderingSettings extends Java2DRenderingSettings {
-
- /** ImageWriter parameters */
- private ImageWriterParams writerParams;
-
- /** Image Type as parameter for the BufferedImage constructor (see BufferedImage.TYPE_*) */
- private int bufferedImageType = (Integer) COLOR_MODE.getDefaultValue();
-
- /** true if anti-aliasing is set */
- private boolean antialiasing = (Boolean) ANTI_ALIASING.getDefaultValue();
-
- /** true if qualityRendering is set */
- private boolean qualityRendering = (Boolean) RENDERING_QUALITY.getDefaultValue();
-
- /**
- * Default constructor. Initializes the settings to their default values.
- */
- public BitmapRenderingSettings() {
- writerParams = new ImageWriterParams();
- }
-
- /**
- * Returns the image writer parameters used for encoding the bitmap images.
- * @return the image writer parameters
- */
- public ImageWriterParams getWriterParams() {
- return this.writerParams;
- }
-
- /**
- * Returns the BufferedImage type.
- * @return one of BufferedImage.TYPE_*
- */
- public int getBufferedImageType() {
- return this.bufferedImageType;
- }
-
- /**
- * Sets the type of the BufferedImage to use when preparing a new instance.
- * @param bufferedImageType a BufferImage.TYPE_* value
- */
- public void setBufferedImageType(int bufferedImageType) {
- this.bufferedImageType = bufferedImageType;
- }
-
- /**
- * Enables or disables anti-aliasing.
- * @param value true to enable anti-aliasing
- */
- public void setAntiAliasing(boolean value) {
- this.antialiasing = value;
- }
-
- /**
- * Indicates whether anti-aliasing is enabled.
- * @return true if anti-aliasing is enabled
- */
- public boolean isAntiAliasingEnabled() {
- return this.antialiasing;
- }
-
- /**
- * Controls whether to optimize rendering for speed or for quality.
- * @param quality true to optimize for quality, false to optimize for speed
- */
- public void setQualityRendering(boolean quality) {
- this.qualityRendering = quality;
- }
-
- /**
- * Indicates whether quality rendering is enabled.
- * @return true indicates optimization for quality, false indicates optimization for speed
- */
- public boolean isQualityRenderingEnabled() {
- return this.qualityRendering;
- }
-
- /**
- * Sets the compression method for the image writer.
- * @param compressionMethod the compression method name
- */
- public void setCompressionMethod(String compressionMethod) {
- writerParams.setCompressionMethod(compressionMethod);
- }
-
- /**
- * Returns the compression method being used by the image writer.
- * @return the compression method in use
- */
- public String getCompressionMethod() {
- return writerParams.getCompressionMethod();
- }
-
- /**
- * Sets the resolution of the output image.
- * @param dpi the dots-per-inch of the image
- */
- public void setResolution(int dpi) {
- writerParams.setResolution(dpi);
- }
- }
|