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 Summary

    Constructors
    Constructor
    Description
    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.
    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 Type
    Method
    Description
    float
    getWidth(int gid)
    Gets width for glyph with given gid from charstrings.
    int
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • 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.