Package org.apache.fontbox.cff
Class Type2CharString
- java.lang.Object
-
- org.apache.fontbox.cff.Type1CharString
-
- org.apache.fontbox.cff.Type2CharString
-
- Direct Known Subclasses:
CIDKeyedType2CharString
public class Type2CharString extends Type1CharString
Represents a Type 2 CharString by converting it into an equivalent Type 1 CharString.
-
-
Field Summary
Fields Modifier and Type Field Description private floatdefWidthXprivate intgidprivate floatnominalWidthXprivate intpathCount
-
Constructor Summary
Constructors Constructor Description Type2CharString(Type1CharStringReader font, java.lang.String fontName, java.lang.String glyphName, int gid, java.util.List<java.lang.Object> sequence, int defaultWidthX, int nomWidthX)Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddAlternatingCurve(java.util.List<java.lang.Number> numbers, boolean horizontal)private voidaddAlternatingLine(java.util.List<java.lang.Number> numbers, boolean horizontal)private voidaddCommandList(java.util.List<java.util.List<java.lang.Number>> numbers, CharStringCommand command)private voidaddCurve(java.util.List<java.lang.Number> numbers, boolean horizontal)private java.util.List<java.lang.Number>clearStack(java.util.List<java.lang.Number> numbers, boolean flag)private voidcloseCharString2Path()private voidconvertType1ToType2(java.util.List<java.lang.Object> sequence)Converts a sequence of Type 2 commands into a sequence of Type 1 commands.private java.util.List<java.lang.Number>convertType2Command(java.util.List<java.lang.Number> numbers, CharStringCommand command)private voidexpandStemHints(java.util.List<java.lang.Number> numbers, boolean horizontal)intgetGID()Return the GID (glyph id) of this charstring.private voidmarkPath()private static <E> java.util.List<java.util.List<E>>split(java.util.List<E> list, int size)-
Methods inherited from class org.apache.fontbox.cff.Type1CharString
addCommand, getBounds, getLastSequenceEntry, getName, getPath, getWidth, isSequenceEmpty, toString
-
-
-
-
Constructor Detail
-
Type2CharString
public Type2CharString(Type1CharStringReader font, java.lang.String fontName, java.lang.String glyphName, int gid, java.util.List<java.lang.Object> sequence, int defaultWidthX, int nomWidthX)
Constructor.- Parameters:
font- Parent CFF fontfontName- font nameglyphName- glyph name (or CID as hex string)gid- GIDsequence- Type 2 char string sequencedefaultWidthX- default widthnomWidthX- nominal width
-
-
Method Detail
-
getGID
public int getGID()
Return the GID (glyph id) of this charstring.- Returns:
- the GID of this charstring
-
convertType1ToType2
private void convertType1ToType2(java.util.List<java.lang.Object> sequence)
Converts a sequence of Type 2 commands into a sequence of Type 1 commands.- Parameters:
sequence- the Type 2 char string sequence
-
convertType2Command
private java.util.List<java.lang.Number> convertType2Command(java.util.List<java.lang.Number> numbers, CharStringCommand command)
-
clearStack
private java.util.List<java.lang.Number> clearStack(java.util.List<java.lang.Number> numbers, boolean flag)
-
expandStemHints
private void expandStemHints(java.util.List<java.lang.Number> numbers, boolean horizontal)- Parameters:
numbers-horizontal-
-
markPath
private void markPath()
-
closeCharString2Path
private void closeCharString2Path()
-
addAlternatingLine
private void addAlternatingLine(java.util.List<java.lang.Number> numbers, boolean horizontal)
-
addAlternatingCurve
private void addAlternatingCurve(java.util.List<java.lang.Number> numbers, boolean horizontal)
-
addCurve
private void addCurve(java.util.List<java.lang.Number> numbers, boolean horizontal)
-
addCommandList
private void addCommandList(java.util.List<java.util.List<java.lang.Number>> numbers, CharStringCommand command)
-
split
private static <E> java.util.List<java.util.List<E>> split(java.util.List<E> list, int size)
-
-