1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- /*
- * 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.pcl;
-
- import org.apache.fop.render.ImageHandlerUtil;
- import org.apache.fop.render.RendererContext;
-
- /**
- * Wrapper on the RendererContext to access the information structure for drawing
- * the XML document.
- */
- public class PCLRendererContext extends RendererContext.RendererContextWrapper {
-
- /**
- * Wrap the render context to allow easier access to its values.
- *
- * @param context the renderer context
- * @return the PCL-specific renderer context wrapper
- */
- public static PCLRendererContext wrapRendererContext(RendererContext context) {
- PCLRendererContext pcli = new PCLRendererContext(context);
- return pcli;
- }
-
- /**
- * Main constructor
- * @param context the RendererContent instance
- */
- public PCLRendererContext(RendererContext context) {
- super(context);
- }
-
- /** @return true if the SVG image should be rendered as a bitmap */
- public boolean paintAsBitmap() {
- return ImageHandlerUtil.isConversionModeBitmap(getForeignAttributes());
- }
-
- /** @return true if clipping is disabled inside the PCLGraphics2D. */
- public boolean isClippingDisabled() {
- return getForeignAttributes() != null
- && "true".equalsIgnoreCase((String)getForeignAttributes().get(
- PCLConstants.DISABLE_CLIPPING));
- }
-
- /**
- * Indicates whether the background should not be erased prior to painting.
- * @return true if the background shouldn't be erased
- */
- public boolean isSourceTransparency() {
- return getForeignAttributes() != null
- && "true".equalsIgnoreCase((String)getForeignAttributes().get(
- PCLConstants.SRC_TRANSPARENCY));
- }
-
- /**
- * Indicates whether an RGB canvas should be used rather than one with grayscales.
- * This can be used to work around limitations of Apache Batik if you get error while
- * processing SVG graphics. Note, however, that RGB mode will use more memory.
- * @return true if an EGB canvas should be used
- */
- public boolean isColorCanvas() {
- Boolean prop = (Boolean)context.getProperty(PCLRendererContextConstants.PCL_COLOR_CANVAS);
- return Boolean.TRUE.equals(prop)
- || (getForeignAttributes() != null
- && "true".equalsIgnoreCase((String)getForeignAttributes().get(
- PCLConstants.COLOR_CANVAS)));
- }
-
- }
|