Class FontCache

java.lang.Object
com.itextpdf.io.font.FontCache

public class FontCache extends Object
  • Constructor Details

    • FontCache

      public FontCache()
  • Method Details

    • isPredefinedCidFont

      protected static boolean isPredefinedCidFont (String fontName)
      Checks if the font with the given name and encoding is one of the predefined CID fonts.
      Parameters:
      fontName - the font name.
      Returns:
      true if it is CJKFont.
    • getCompatibleCidFont

      public static String getCompatibleCidFont (String cmap)
      Finds a CJK font family which is compatible to the given CMap.
      Parameters:
      cmap - a name of the CMap for which compatible font is searched.
      Returns:
      a CJK font name if there's known compatible font for the given cmap name, or null otherwise.
    • getCompatibleCmaps

      public static Set<String> getCompatibleCmaps (String fontName)
      Finds all CMap names that belong to the same registry to which a given font belongs.
      Parameters:
      fontName - a name of the font for which CMap's are searched.
      Returns:
      a set of CMap names corresponding to the given font.
    • getAllPredefinedCidFonts

      public static Map<String,Map<String,Object>> getAllPredefinedCidFonts()
    • getRegistryNames

      public static Map<String,Set<String>> getRegistryNames()
    • getCid2UniCmap

      public static CMapCidUni getCid2UniCmap (String uniMap)
      Parses CMap with a given name producing it in a form of cid to unicode mapping.
      Parameters:
      uniMap - a CMap name. It is expected that CMap identified by this name defines unicode to cid mapping.
      Returns:
      an object for convenient mapping from cid to unicode. If no CMap was found for provided name an exception is thrown.
    • getUni2CidCmap

      public static CMapUniCid getUni2CidCmap (String uniMap)
    • getByte2CidCmap

      public static CMapByteCid getByte2CidCmap (String cmap)
    • getCidToCodepointCmap

      public static CMapCidToCodepoint getCidToCodepointCmap (String cmap)
    • getCodepointToCidCmap

      public static CMapCodepointToCid getCodepointToCidCmap (String uniMap)
    • clearSavedFonts

      public static void clearSavedFonts()
      Clears the cache by removing fonts that were added via saveFont(FontProgram, String).

      Be aware that in multithreading environment this method call will affect the result of getFont(String). This in its turn affects creation of fonts via factories when cached argument is set to true (which is by default).

    • getFont

      public static FontProgram getFont (String fontName)
    • saveFont

      public static FontProgram saveFont (FontProgram font, String fontName)