Package org.verapdf.pd.font.cff
Class CharStringsWidths
java.lang.Object
org.verapdf.pd.font.cff.CharStringsWidths
This class handles obtaining glyph widths from cff charStrings. If font is
a subset, then all charstrings are parsed at initialization, else each
charstring is parsed separately in getter.
- Author:
- Sergey Shemyakov
-
Constructor Summary
ConstructorDescriptionCharStringsWidths
(boolean isSubset, int charStringType, org.verapdf.pd.font.cff.CFFCharStringsHandler charStrings, float[][] fontMatrices, CFFIndex[] localSubrIndex, CFFIndex globalSubrs, int[] bias, int[] defaultWidths, int[] nominalWidths, int[] fdSelect) Initializes handler with given values.CharStringsWidths
(boolean isSubset, int charStringType, org.verapdf.pd.font.cff.CFFCharStringsHandler charStrings, float[] fontMatrix, CFFIndex localSubrIndex, CFFIndex globalSubrs, int bias, int defaultWidth, int nominalWidth) Initializes handler with given values. -
Method Summary
Modifier and TypeMethodDescriptionfloat
getWidth
(int gid) Gets width for glyph with given gid from charstrings.int
-
Constructor Details
-
CharStringsWidths
public CharStringsWidths(boolean isSubset, int charStringType, org.verapdf.pd.font.cff.CFFCharStringsHandler charStrings, float[][] fontMatrices, CFFIndex[] localSubrIndex, CFFIndex globalSubrs, int[] bias, int[] defaultWidths, int[] nominalWidths, int[] fdSelect) Initializes handler with given values.- Parameters:
isSubset
- is true if font is subset. In this case all widths will be parsed during handler initialization.charStringType
- is type of charstring.charStrings
- is charstring handler with charstring data.fontMatrices
- is array of font matrix for each FDArray element.localSubrIndex
- is array of local subrs for each FDArray element.globalSubrs
- is array of global subrs for each FDArray element.bias
- is array of bias values for each FDArray element.defaultWidths
- is array of default widths for each FDArray element.nominalWidths
- is array of nominal widths for each FDArray element.fdSelect
- is fd select array as specified in CFF font.
-
CharStringsWidths
public CharStringsWidths(boolean isSubset, int charStringType, org.verapdf.pd.font.cff.CFFCharStringsHandler charStrings, float[] fontMatrix, CFFIndex localSubrIndex, CFFIndex globalSubrs, int bias, int defaultWidth, int nominalWidth) Initializes handler with given values.- Parameters:
isSubset
- is true if font is subset. In this case all widths will be parsed during handler initialization.charStringType
- is type of charstring.charStrings
- is charstring handler with charstring data.fontMatrix
- is font matrix for this charstrings.localSubrIndex
- is CFFIndex with local subrs.globalSubrs
- is CFFIndex with global subrs.bias
- is bias value that depends on local subrs size.defaultWidth
- is a default width for this font program.nominalWidth
- is a nominal width for this font program.
-
-
Method Details
-
getWidth
public float getWidth(int gid) Gets width for glyph with given gid from charstrings.- Parameters:
gid
- is glyph id.- Returns:
- width for glyph with given gid.
-
getWidthsAmount
public int getWidthsAmount()- Returns:
- amount of width in charstrings.
-