Class Type1CharString

  • Direct Known Subclasses:
    Type2CharString

    public class Type1CharString
    extends java.lang.Object
    This class represents and renders a Type 1 CharString.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      protected Type1CharString​(Type1CharStringReader font, java.lang.String fontName, java.lang.String glyphName)
      Constructor for use in subclasses.
        Type1CharString​(Type1CharStringReader font, java.lang.String fontName, java.lang.String glyphName, java.util.List<java.lang.Object> sequence)
      Constructs a new Type1CharString object.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      private void callothersubr​(int num)
      Flex (via OtherSubrs)
      private void closepath()
      Close path.
      java.awt.geom.Rectangle2D getBounds()
      Returns the bounds of the renderer path.
      java.lang.String getName()  
      java.awt.geom.GeneralPath getPath()
      Returns the path of the character.
      java.util.List<java.lang.Object> getType1Sequence()
      Returns the Type 1 char string sequence.
      int getWidth()
      Returns the advance width of the glyph.
      private java.util.List<java.lang.Number> handleCommand​(java.util.List<java.lang.Number> numbers, CharStringCommand command)  
      private void render()
      Renders the Type 1 char string sequence to a GeneralPath.
      private void rlineTo​(java.lang.Number dx, java.lang.Number dy)
      Relative lineto.
      private void rmoveTo​(java.lang.Number dx, java.lang.Number dy)
      Relative moveto.
      private void rrcurveTo​(java.lang.Number dx1, java.lang.Number dy1, java.lang.Number dx2, java.lang.Number dy2, java.lang.Number dx3, java.lang.Number dy3)
      Relative curveto.
      private void seac​(java.lang.Number asb, java.lang.Number adx, java.lang.Number ady, java.lang.Number bchar, java.lang.Number achar)
      Standard Encoding Accented Character Makes an accented character from two other characters.
      private void setcurrentpoint​(java.lang.Number x, java.lang.Number y)
      Sets the current absolute point without performing a moveto.
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

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

      • LOG

        private static final org.apache.commons.logging.Log LOG
      • fontName

        private final java.lang.String fontName
      • glyphName

        private final java.lang.String glyphName
      • path

        private java.awt.geom.GeneralPath path
      • width

        private int width
      • leftSideBearing

        private java.awt.geom.Point2D.Float leftSideBearing
      • current

        private java.awt.geom.Point2D.Float current
      • isFlex

        private boolean isFlex
      • flexPoints

        private final java.util.List<java.awt.geom.Point2D.Float> flexPoints
      • type1Sequence

        protected java.util.List<java.lang.Object> type1Sequence
      • commandCount

        protected int commandCount
    • Constructor Detail

      • Type1CharString

        public Type1CharString​(Type1CharStringReader font,
                               java.lang.String fontName,
                               java.lang.String glyphName,
                               java.util.List<java.lang.Object> sequence)
        Constructs a new Type1CharString object.
        Parameters:
        font - Parent Type 1 CharString font.
        fontName - Name of the font.
        glyphName - Name of the glyph.
        sequence - Type 1 char string sequence
      • Type1CharString

        protected Type1CharString​(Type1CharStringReader font,
                                  java.lang.String fontName,
                                  java.lang.String glyphName)
        Constructor for use in subclasses.
        Parameters:
        font - Parent Type 1 CharString font.
        fontName - Name of the font.
        glyphName - Name of the glyph.
    • Method Detail

      • getName

        public java.lang.String getName()
      • getBounds

        public java.awt.geom.Rectangle2D getBounds()
        Returns the bounds of the renderer path.
        Returns:
        the bounds as Rectangle2D
      • getWidth

        public int getWidth()
        Returns the advance width of the glyph.
        Returns:
        the width
      • getPath

        public java.awt.geom.GeneralPath getPath()
        Returns the path of the character.
        Returns:
        the path
      • getType1Sequence

        public java.util.List<java.lang.Object> getType1Sequence()
        Returns the Type 1 char string sequence.
        Returns:
        the Type 1 sequence
      • render

        private void render()
        Renders the Type 1 char string sequence to a GeneralPath.
      • handleCommand

        private java.util.List<java.lang.Number> handleCommand​(java.util.List<java.lang.Number> numbers,
                                                               CharStringCommand command)
      • setcurrentpoint

        private void setcurrentpoint​(java.lang.Number x,
                                     java.lang.Number y)
        Sets the current absolute point without performing a moveto. Used only with results from callothersubr
      • callothersubr

        private void callothersubr​(int num)
        Flex (via OtherSubrs)
        Parameters:
        num - OtherSubrs entry number
      • rmoveTo

        private void rmoveTo​(java.lang.Number dx,
                             java.lang.Number dy)
        Relative moveto.
      • rlineTo

        private void rlineTo​(java.lang.Number dx,
                             java.lang.Number dy)
        Relative lineto.
      • rrcurveTo

        private void rrcurveTo​(java.lang.Number dx1,
                               java.lang.Number dy1,
                               java.lang.Number dx2,
                               java.lang.Number dy2,
                               java.lang.Number dx3,
                               java.lang.Number dy3)
        Relative curveto.
      • closepath

        private void closepath()
        Close path.
      • seac

        private void seac​(java.lang.Number asb,
                          java.lang.Number adx,
                          java.lang.Number ady,
                          java.lang.Number bchar,
                          java.lang.Number achar)
        Standard Encoding Accented Character Makes an accented character from two other characters.
        Parameters:
        asb -
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object