Class PCLSoftFontManager


  • public class PCLSoftFontManager
    extends java.lang.Object
    • Constructor Detail

      • PCLSoftFontManager

        public PCLSoftFontManager​(java.util.Map<Typeface,​PCLFontReader> fontReaderMap)
    • Method Detail

      • makeSoftFont

        public java.io.ByteArrayOutputStream makeSoftFont​(Typeface font,
                                                          java.lang.String text)
                                                   throws java.io.IOException
        Throws:
        java.io.IOException
      • getSoftFont

        private PCLSoftFont getSoftFont​(Typeface font,
                                        java.lang.String text,
                                        java.util.List<java.util.Map<java.lang.Character,​java.lang.Integer>> mappedGlyphs,
                                        PCLSoftFont last)
      • mapFontGlyphs

        private java.util.List<java.util.Map<java.lang.Character,​java.lang.Integer>> mapFontGlyphs​(Typeface tf)
                                                                                                  throws java.io.IOException
        Throws:
        java.io.IOException
      • mapGlyphs

        private java.util.List<java.util.Map<java.lang.Character,​java.lang.Integer>> mapGlyphs​(java.util.Map<java.lang.Integer,​java.lang.Integer> usedGlyphs,
                                                                                                     CustomFont font)
                                                                                              throws java.io.IOException
        Throws:
        java.io.IOException
      • isComposite

        private boolean isComposite​(CustomFont customFont,
                                    int unicode)
                             throws java.io.IOException
        Throws:
        java.io.IOException
      • writeFontID

        private void writeFontID​(int fontID,
                                 java.io.OutputStream os)
                          throws java.io.IOException
        Throws:
        java.io.IOException
      • assignFontID

        public byte[] assignFontID​(int fontID)
                            throws java.io.IOException
        Throws:
        java.io.IOException
      • writeFontHeader

        private void writeFontHeader​(java.util.Map<java.lang.Character,​java.lang.Integer> mappedGlyphs,
                                     java.io.OutputStream os)
                              throws java.io.IOException
        Throws:
        java.io.IOException
      • writeSegmentedFontData

        private void writeSegmentedFontData​(java.io.ByteArrayOutputStream header,
                                            java.util.Map<java.lang.Character,​java.lang.Integer> mappedGlyphs)
                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • getFontHeaderCommand

        private byte[] getFontHeaderCommand​(int headerSize)
                                     throws java.io.IOException
        Throws:
        java.io.IOException
      • writeFontSegment

        private void writeFontSegment​(java.io.ByteArrayOutputStream header,
                                      PCLFontSegment segment)
                               throws java.io.IOException
        Throws:
        java.io.IOException
      • getSoftFont

        public PCLSoftFont getSoftFont​(Typeface font,
                                       java.lang.String text)
        Finds a soft font associated with the given typeface. If more than one instance of the font exists (as each font is bound and restricted to 255 characters) it will find the last font with available capacity.
        Parameters:
        font - The typeface associated with the soft font
        Returns:
        Returns the PCLSoftFont with available capacity
      • getSoftFontFromID

        public PCLSoftFont getSoftFontFromID​(int index)
      • countNonMatches

        private int countNonMatches​(PCLSoftFont font,
                                    java.lang.String text)
      • getSoftFontID

        public int getSoftFontID​(Typeface tf)
                          throws java.io.IOException
        Throws:
        java.io.IOException