Class PCLGraphics2D

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class PCLGraphics2D
    extends org.apache.xmlgraphics.java2d.AbstractGraphics2D
    Graphics2D implementation implementing PCL and HP GL/2. Note: This class cannot be used stand-alone to create full PCL documents.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private boolean clippingDisabled  
      private static boolean FAIL_ON_UNSUPPORTED_FEATURE  
      private java.awt.Graphics2D fmg
      Used to create proper font metrics
      protected PCLGenerator gen
      The PCL generator
      • Fields inherited from class org.apache.xmlgraphics.java2d.AbstractGraphics2D

        gc, inPossibleRecursion, textAsShapes
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected void applyPaint​(java.awt.Paint paint)
      Applies a new Paint object.
      protected void applyStroke​(java.awt.Stroke stroke)
      Applies a new Stroke object.
      private void bezierAbsolute​(double x1, double y1, double x2, double y2, double x3, double y3, java.lang.StringBuffer sb)  
      protected java.awt.image.BufferedImage buildBufferedImage​(java.awt.Dimension size)
      Creates a buffered image.
      void copyArea​(int x, int y, int width, int height, int dx, int dy)
      java.awt.Graphics create()
      void dispose()
      void draw​(java.awt.Shape s)
      boolean drawImage​(java.awt.Image img, int x, int y, int width, int height, java.awt.image.ImageObserver observer)
      boolean drawImage​(java.awt.Image img, int x, int y, java.awt.image.ImageObserver observer)
      void drawRenderableImage​(java.awt.image.renderable.RenderableImage img, java.awt.geom.AffineTransform xform)
      void drawRenderedImage​(java.awt.image.RenderedImage img, java.awt.geom.AffineTransform xform)
      void drawString​(java.lang.String s, float x, float y)
      void drawString​(java.text.AttributedCharacterIterator iterator, float x, float y)
      void fill​(java.awt.Shape s)
      private void fillPolygon​(int windingRule, java.lang.StringBuffer sb)  
      java.awt.GraphicsConfiguration getDeviceConfiguration()
      java.awt.FontMetrics getFontMetrics​(java.awt.Font f)
      void handleIOException​(java.io.IOException ioe)
      Central handler for IOExceptions for this class.
      protected void handleUnsupportedFeature​(java.lang.String msg)
      Raises an UnsupportedOperationException if this instance is configured to do so and an unsupported feature has been requested.
      private void penDown​(java.lang.StringBuffer sb)  
      private void penUp​(java.lang.StringBuffer sb)  
      private void plotAbsolute​(double x, double y, java.lang.StringBuffer sb)  
      void processPathIteratorFill​(java.awt.geom.PathIterator iter)
      Processes a path iterator generating the nexessary painting operations.
      void processPathIteratorStroke​(java.awt.geom.PathIterator iter)
      Processes a path iterator generating the nexessary painting operations.
      private void quadraticBezierAbsolute​(double originX, double originY, double x1, double y1, double x2, double y2, java.lang.StringBuffer sb)  
      void setClippingDisabled​(boolean value)
      Allows to disable all clipping operations.
      void setGraphicContext​(org.apache.xmlgraphics.java2d.GraphicContext c)
      Sets the GraphicContext
      void setXORMode​(java.awt.Color c1)
      private void writeClip​(java.awt.Shape imclip)  
      • Methods inherited from class org.apache.xmlgraphics.java2d.AbstractGraphics2D

        addRenderingHints, clearRect, clip, clipRect, drawArc, drawGlyphVector, drawImage, drawImage, drawImage, drawImage, drawImage, drawImage, drawLine, drawOval, drawPolygon, drawPolyline, drawRect, drawRoundRect, drawString, drawString, fillArc, fillOval, fillPolygon, fillRect, fillRoundRect, getBackground, getClip, getClipBounds, getColor, getComposite, getFont, getFontRenderContext, getGraphicContext, getPaint, getRenderingHint, getRenderingHints, getStroke, getTransform, hit, rotate, rotate, scale, setBackground, setClip, setClip, setColor, setComposite, setFont, setPaint, setPaintMode, setRenderingHint, setRenderingHints, setStroke, setTransform, shear, transform, translate, translate
      • Methods inherited from class java.awt.Graphics2D

        draw3DRect, fill3DRect
      • Methods inherited from class java.awt.Graphics

        create, drawBytes, drawChars, drawPolygon, fillPolygon, finalize, getClipBounds, getClipRect, getFontMetrics, hitClip, toString
      • Methods inherited from class java.lang.Object

        clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • FAIL_ON_UNSUPPORTED_FEATURE

        private static final boolean FAIL_ON_UNSUPPORTED_FEATURE
        See Also:
        Constant Field Values
      • clippingDisabled

        private boolean clippingDisabled
      • fmg

        private java.awt.Graphics2D fmg
        Used to create proper font metrics
    • Constructor Detail

      • PCLGraphics2D

        public PCLGraphics2D​(PCLGenerator gen)
        Create a new PCLGraphics2D.
        Parameters:
        gen - the PCL Generator to paint with
      • PCLGraphics2D

        public PCLGraphics2D​(PCLGraphics2D g)
        Copy constructor
        Parameters:
        g - parent PCLGraphics2D
    • Method Detail

      • create

        public java.awt.Graphics create()
        Specified by:
        create in class java.awt.Graphics
      • dispose

        public void dispose()
        Specified by:
        dispose in class java.awt.Graphics
      • setGraphicContext

        public void setGraphicContext​(org.apache.xmlgraphics.java2d.GraphicContext c)
        Sets the GraphicContext
        Parameters:
        c - GraphicContext to use
      • setClippingDisabled

        public void setClippingDisabled​(boolean value)
        Allows to disable all clipping operations.
        Parameters:
        value - true if clipping should be disabled.
      • handleIOException

        public void handleIOException​(java.io.IOException ioe)
        Central handler for IOExceptions for this class.
        Parameters:
        ioe - IOException to handle
      • handleUnsupportedFeature

        protected void handleUnsupportedFeature​(java.lang.String msg)
        Raises an UnsupportedOperationException if this instance is configured to do so and an unsupported feature has been requested. Clients can make use of this to fall back to a more compatible way of painting a PCL graphic.
        Parameters:
        msg - the error message to be displayed
      • getDeviceConfiguration

        public java.awt.GraphicsConfiguration getDeviceConfiguration()
        Specified by:
        getDeviceConfiguration in class java.awt.Graphics2D
      • applyStroke

        protected void applyStroke​(java.awt.Stroke stroke)
                            throws java.io.IOException
        Applies a new Stroke object.
        Parameters:
        stroke - Stroke object to use
        Throws:
        java.io.IOException - In case of an I/O problem
      • applyPaint

        protected void applyPaint​(java.awt.Paint paint)
                           throws java.io.IOException
        Applies a new Paint object.
        Parameters:
        paint - Paint object to use
        Throws:
        java.io.IOException - In case of an I/O problem
      • writeClip

        private void writeClip​(java.awt.Shape imclip)
                        throws java.io.IOException
        Throws:
        java.io.IOException
      • draw

        public void draw​(java.awt.Shape s)
        Specified by:
        draw in class java.awt.Graphics2D
      • fill

        public void fill​(java.awt.Shape s)
        Specified by:
        fill in class java.awt.Graphics2D
      • processPathIteratorStroke

        public void processPathIteratorStroke​(java.awt.geom.PathIterator iter)
                                       throws java.io.IOException
        Processes a path iterator generating the nexessary painting operations.
        Parameters:
        iter - PathIterator to process
        Throws:
        java.io.IOException - In case of an I/O problem.
      • processPathIteratorFill

        public void processPathIteratorFill​(java.awt.geom.PathIterator iter)
                                     throws java.io.IOException
        Processes a path iterator generating the nexessary painting operations.
        Parameters:
        iter - PathIterator to process
        Throws:
        java.io.IOException - In case of an I/O problem.
      • fillPolygon

        private void fillPolygon​(int windingRule,
                                 java.lang.StringBuffer sb)
      • plotAbsolute

        private void plotAbsolute​(double x,
                                  double y,
                                  java.lang.StringBuffer sb)
      • bezierAbsolute

        private void bezierAbsolute​(double x1,
                                    double y1,
                                    double x2,
                                    double y2,
                                    double x3,
                                    double y3,
                                    java.lang.StringBuffer sb)
      • quadraticBezierAbsolute

        private void quadraticBezierAbsolute​(double originX,
                                             double originY,
                                             double x1,
                                             double y1,
                                             double x2,
                                             double y2,
                                             java.lang.StringBuffer sb)
      • penDown

        private void penDown​(java.lang.StringBuffer sb)
      • penUp

        private void penUp​(java.lang.StringBuffer sb)
      • drawString

        public void drawString​(java.lang.String s,
                               float x,
                               float y)
        Specified by:
        drawString in class java.awt.Graphics2D
      • drawString

        public void drawString​(java.text.AttributedCharacterIterator iterator,
                               float x,
                               float y)
        Overrides:
        drawString in class org.apache.xmlgraphics.java2d.AbstractGraphics2D
      • drawRenderedImage

        public void drawRenderedImage​(java.awt.image.RenderedImage img,
                                      java.awt.geom.AffineTransform xform)
        Specified by:
        drawRenderedImage in class java.awt.Graphics2D
      • drawRenderableImage

        public void drawRenderableImage​(java.awt.image.renderable.RenderableImage img,
                                        java.awt.geom.AffineTransform xform)
        Specified by:
        drawRenderableImage in class java.awt.Graphics2D
      • drawImage

        public boolean drawImage​(java.awt.Image img,
                                 int x,
                                 int y,
                                 int width,
                                 int height,
                                 java.awt.image.ImageObserver observer)
        Specified by:
        drawImage in class java.awt.Graphics
      • drawImage

        public boolean drawImage​(java.awt.Image img,
                                 int x,
                                 int y,
                                 java.awt.image.ImageObserver observer)
        Specified by:
        drawImage in class java.awt.Graphics
      • copyArea

        public void copyArea​(int x,
                             int y,
                             int width,
                             int height,
                             int dx,
                             int dy)
        Specified by:
        copyArea in class java.awt.Graphics
      • setXORMode

        public void setXORMode​(java.awt.Color c1)
        Specified by:
        setXORMode in class java.awt.Graphics
      • buildBufferedImage

        protected java.awt.image.BufferedImage buildBufferedImage​(java.awt.Dimension size)
        Creates a buffered image.
        Parameters:
        size - dimensions of the image to be created
        Returns:
        the buffered image
      • getFontMetrics

        public java.awt.FontMetrics getFontMetrics​(java.awt.Font f)
        Specified by:
        getFontMetrics in class java.awt.Graphics