Package org.apache.fontbox.cff
Class Type1CharString
- java.lang.Object
-
- org.apache.fontbox.cff.Type1CharString
-
- Direct Known Subclasses:
Type2CharString
public class Type1CharString extends java.lang.ObjectThis class represents and renders a Type 1 CharString.
-
-
Field Summary
Fields Modifier and Type Field Description protected intcommandCountprivate java.awt.geom.Point2D.Floatcurrentprivate java.util.List<java.awt.geom.Point2D.Float>flexPointsprivate Type1CharStringReaderfontprivate java.lang.StringfontNameprivate java.lang.StringglyphNameprivate booleanisFlexprivate java.awt.geom.Point2D.FloatleftSideBearingprivate static org.apache.commons.logging.LogLOGprivate java.awt.geom.GeneralPathpathprotected java.util.List<java.lang.Object>type1Sequenceprivate intwidth
-
Constructor Summary
Constructors Modifier Constructor Description protectedType1CharString(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 voidcallothersubr(int num)Flex (via OtherSubrs)private voidcloseCharString1Path()Close path.java.awt.geom.Rectangle2DgetBounds()Returns the bounds of the renderer path.java.lang.StringgetName()java.awt.geom.GeneralPathgetPath()Returns the path of the character.java.util.List<java.lang.Object>getType1Sequence()Returns the Type 1 char string sequence.intgetWidth()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 voidrender()Renders the Type 1 char string sequence to a GeneralPath.private voidrlineTo(java.lang.Number dx, java.lang.Number dy)Relative lineto.private voidrmoveTo(java.lang.Number dx, java.lang.Number dy)Relative moveto.private voidrrcurveTo(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 voidseac(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 voidsetcurrentpoint(java.lang.Number x, java.lang.Number y)Sets the current absolute point without performing a moveto.java.lang.StringtoString()
-
-
-
Field Detail
-
LOG
private static final org.apache.commons.logging.Log LOG
-
font
private Type1CharStringReader font
-
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.
-
closeCharString1Path
private void closeCharString1Path()
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:
toStringin classjava.lang.Object
-
-