Class FontFactoryImp

  • All Implemented Interfaces:
    FontProvider
    Direct Known Subclasses:
    XMLWorkerFontProvider

    public class FontFactoryImp
    extends Object
    implements FontProvider
    If you are using True Type fonts, you can declare the paths of the different ttf- and ttc-files to this class first and then create fonts in your code using one of the getFont method without having to enter a path as parameter.
    Author:
    Bruno Lowagie
    • Field Detail

      • defaultEncoding

        public String defaultEncoding
        This is the default encoding to use.
      • defaultEmbedding

        public boolean defaultEmbedding
        This is the default value of the embedded variable.
    • Constructor Detail

      • FontFactoryImp

        public FontFactoryImp()
        Creates new FontFactory
    • Method Detail

      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            boolean embedded,
                            float size,
                            int style,
                            BaseColor color)
        Constructs a Font-object.
        Specified by:
        getFont in interface FontProvider
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        embedded - true if the font is to be embedded in the PDF
        size - the size of this font
        style - the style of this font
        color - the BaseColor of this font.
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            boolean embedded,
                            float size,
                            int style,
                            BaseColor color,
                            boolean cached)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        embedded - true if the font is to be embedded in the PDF
        size - the size of this font
        style - the style of this font
        color - the BaseColor of this font.
        cached - true if the font comes from the cache or is added to the cache if new, false if the font is always created new
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            boolean embedded,
                            float size,
                            int style)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        embedded - true if the font is to be embedded in the PDF
        size - the size of this font
        style - the style of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            boolean embedded,
                            float size)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        embedded - true if the font is to be embedded in the PDF
        size - the size of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            boolean embedded)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        embedded - true if the font is to be embedded in the PDF
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            float size,
                            int style,
                            BaseColor color)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        size - the size of this font
        style - the style of this font
        color - the BaseColor of this font.
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            float size,
                            int style)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        size - the size of this font
        style - the style of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            String encoding,
                            float size)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        size - the size of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            float size,
                            BaseColor color)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        size - the size of this font
        color - the BaseColor of this font.
        Returns:
        the Font constructed based on the parameters
        Since:
        2.1.0
      • getFont

        public Font getFont​(String fontname,
                            String encoding)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        encoding - the encoding of the font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            float size,
                            int style,
                            BaseColor color)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        size - the size of this font
        style - the style of this font
        color - the BaseColor of this font.
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            float size,
                            int style)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        size - the size of this font
        style - the style of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname,
                            float size)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        size - the size of this font
        Returns:
        the Font constructed based on the parameters
      • getFont

        public Font getFont​(String fontname)
        Constructs a Font-object.
        Parameters:
        fontname - the name of the font
        Returns:
        the Font constructed based on the parameters
      • registerFamily

        public void registerFamily​(String familyName,
                                   String fullName,
                                   String path)
        Register a font by giving explicitly the font family and name.
        Parameters:
        familyName - the font family
        fullName - the font name
        path - the font path
      • register

        public void register​(String path)
        Register a ttf- or a ttc-file.
        Parameters:
        path - the path to a ttf- or ttc-file
      • register

        public void register​(String path,
                             String alias)
        Register a font file and use an alias for the font contained in it.
        Parameters:
        path - the path to a font file
        alias - the alias you want to use for the font
      • saveCopyOfRegularFont

        protected boolean saveCopyOfRegularFont​(String regularFontName,
                                                String path)
      • registerDirectory

        public int registerDirectory​(String dir)
        Register all the fonts in a directory.
        Parameters:
        dir - the directory
        Returns:
        the number of fonts registered
      • registerDirectory

        public int registerDirectory​(String dir,
                                     boolean scanSubdirectories)
        Register all the fonts in a directory and possibly its subdirectories.
        Parameters:
        dir - the directory
        scanSubdirectories - recursively scan subdirectories if true
        Returns:
        the number of fonts registered
        Since:
        2.1.2
      • registerDirectories

        public int registerDirectories()
        Register fonts in some probable directories. It usually works in Windows, Linux and Solaris.
        Returns:
        the number of fonts registered
      • getRegisteredFonts

        public Set<String> getRegisteredFonts()
        Gets a set of registered fontnames.
        Returns:
        a set of registered fonts
      • getRegisteredFamilies

        public Set<String> getRegisteredFamilies()
        Gets a set of registered fontnames.
        Returns:
        a set of registered font families
      • isRegistered

        public boolean isRegistered​(String fontname)
        Checks if a certain font is registered.
        Specified by:
        isRegistered in interface FontProvider
        Parameters:
        fontname - the name of the font that has to be checked.
        Returns:
        true if the font is found