Class SVGCanvas

  • All Implemented Interfaces:
    java.io.Closeable, java.lang.AutoCloseable, Canvas

    public class SVGCanvas
    extends AbstractCanvas
    • Constructor Summary

      Constructors 
      Constructor Description
      SVGCanvas()
      Creates a new instance
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addRectangle​(double x, double y, double width, double height)
      Adds a rectangle to the path
      void close()  
      void fillPath​(int color)
      Fills the current path and ends it
      byte[] getResult()
      Returns the generated graphics as a byte array
      void lineTo​(double x, double y)
      Adds a line segment to the open path from the previous point to the speicifed position.
      void moveTo​(double x, double y)
      Moves the current point of the open path to the specified position.
      void putText​(java.lang.String text, double x, double y, int fontSize, boolean isBold)
      Adds text to the graphics.
      void setTransformation​(double translateX, double translateY, double scale)
      Sets a translation and a scale factor for the subsequent operations
      void setupPage​(double width, double height)
      Sets up the page
      void startPath()
      Starts a path that can be filled or stroked
      void strokePath​(double strokeWidth, int color)
      Strokes the current path and ends it
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • SVGCanvas

        public SVGCanvas()
        Creates a new instance
    • Method Detail

      • setupPage

        public void setupPage​(double width,
                              double height)
                       throws java.io.IOException
        Description copied from interface: Canvas
        Sets up the page

        The page (and graphics context) is not valid until this method has been called.

        Parameters:
        width - width of page (in mm)
        height - height of page (in mm)
        Throws:
        java.io.IOException - thrown if graphics cannot be generated
      • close

        public void close()
                   throws java.io.IOException
        Throws:
        java.io.IOException
      • startPath

        public void startPath()
                       throws java.io.IOException
        Description copied from interface: Canvas
        Starts a path that can be filled or stroked
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • moveTo

        public void moveTo​(double x,
                           double y)
                    throws java.io.IOException
        Description copied from interface: Canvas
        Moves the current point of the open path to the specified position.
        Parameters:
        x - x-coordinate of position
        y - y-coordinate of position
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • lineTo

        public void lineTo​(double x,
                           double y)
                    throws java.io.IOException
        Description copied from interface: Canvas
        Adds a line segment to the open path from the previous point to the speicifed position.
        Parameters:
        x - x-coordinate of position
        y - y-coordinate of position
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • addRectangle

        public void addRectangle​(double x,
                                 double y,
                                 double width,
                                 double height)
                          throws java.io.IOException
        Description copied from interface: Canvas
        Adds a rectangle to the path
        Parameters:
        x - the rectangle's left position (in mm)
        y - the rectangle's top position (in mm)
        width - the rectangle's width (in mm)
        height - rectangle's height (in mm)
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • fillPath

        public void fillPath​(int color)
                      throws java.io.IOException
        Description copied from interface: Canvas
        Fills the current path and ends it
        Parameters:
        color - the fill color (expressed similar to HTML, e.g. 0xffffff for white)
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • strokePath

        public void strokePath​(double strokeWidth,
                               int color)
                        throws java.io.IOException
        Description copied from interface: Canvas
        Strokes the current path and ends it
        Parameters:
        strokeWidth - the stroke width (in pt)
        color - the stroke color (expressed similar to HTML, e.g. 0xffffff for white)
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • putText

        public void putText​(java.lang.String text,
                            double x,
                            double y,
                            int fontSize,
                            boolean isBold)
                     throws java.io.IOException
        Description copied from interface: Canvas
        Adds text to the graphics.

        The text position refers to the left most point on the text's baseline.

        Parameters:
        text - the text
        x - x position of the text's start (in mm)
        y - y position of the text's top (in mm)
        fontSize - the font size (in pt)
        isBold - indicates if the text is in bold or regular weight
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • setTransformation

        public void setTransformation​(double translateX,
                                      double translateY,
                                      double scale)
                               throws java.io.IOException
        Description copied from interface: Canvas
        Sets a translation and a scale factor for the subsequent operations

        Before a new translation is applied, the coordinate system is reset to it's original state after page setup (see setupPage).

        Parameters:
        translateX - translation in x direction (in mm)
        translateY - translation in y direction (in mm)
        scale - scale fator (1.0 = no scaling)
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated
      • getResult

        public byte[] getResult()
                         throws java.io.IOException
        Description copied from interface: Canvas
        Returns the generated graphics as a byte array

        After this method was called, the page is no longer valid.

        Returns:
        the byte array
        Throws:
        java.io.IOException - thrown if the graphics cannot be generated