Class CharStringsWidths

java.lang.Object
org.verapdf.pd.font.cff.CharStringsWidths

public class CharStringsWidths extends Object
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 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.