Class NameTable

    • Field Detail

      • PLATFORMID_UNICODE

        public static final short PLATFORMID_UNICODE
        Values for platformID
        See Also:
        Constant Field Values
      • ENCODINGID_MAC_ROMAN

        public static final short ENCODINGID_MAC_ROMAN
        Values for platformSpecificID if platform is Mac
        See Also:
        Constant Field Values
      • ENCODINGID_UNICODE_DEFAULT

        public static final short ENCODINGID_UNICODE_DEFAULT
        Values for platformSpecificID if platform is Unicode
        See Also:
        Constant Field Values
      • ENCODINGID_UNICODE_V11

        public static final short ENCODINGID_UNICODE_V11
        See Also:
        Constant Field Values
      • LANGUAGEID_MAC_ENGLISH

        public static final short LANGUAGEID_MAC_ENGLISH
        Values for language ID if platform is Mac
        See Also:
        Constant Field Values
      • NAMEID_COPYRIGHT

        public static final short NAMEID_COPYRIGHT
        Values for nameID
        See Also:
        Constant Field Values
      • NAMEID_SUBFAMILY_UNIQUE

        public static final short NAMEID_SUBFAMILY_UNIQUE
        See Also:
        Constant Field Values
      • NAMEID_POSTSCRIPT_NAME

        public static final short NAMEID_POSTSCRIPT_NAME
        See Also:
        Constant Field Values
      • format

        private short format
        The format of this table
      • records

        private java.util.SortedMap<NameTable.NameRecord,​java.lang.String> records
        The actual name records
    • Constructor Detail

      • NameTable

        protected NameTable()
        Creates a new instance of NameTable
    • Method Detail

      • addRecord

        public void addRecord​(short platformID,
                              short platformSpecificID,
                              short languageID,
                              short nameID,
                              java.lang.String value)
        Add a record to the table
      • getRecord

        public java.lang.String getRecord​(short platformID,
                                          short platformSpecificID,
                                          short languageID,
                                          short nameID)
        Get a record from the table
      • removeRecord

        public void removeRecord​(short platformID,
                                 short platformSpecificID,
                                 short languageID,
                                 short nameID)
        Remove a record from the table
      • hasRecords

        public boolean hasRecords​(short platformID)
        Determine if we have any records with a given platform ID
      • hasRecords

        public boolean hasRecords​(short platformID,
                                  short platformSpecificID)
        Determine if we have any records with a given platform ID and platform-specific ID
      • setData

        public void setData​(java.nio.ByteBuffer data)
        Read the table from data
        Overrides:
        setData in class TrueTypeTable
      • getData

        public java.nio.ByteBuffer getData()
        Get the data in this table as a buffer
        Overrides:
        getData in class TrueTypeTable
      • getLength

        public int getLength()
        Get the length of this table
        Overrides:
        getLength in class TrueTypeTable
      • getFormat

        public short getFormat()
        Get the format of this table
      • setFormat

        public void setFormat​(short format)
        Set the format of this table
      • getCount

        public short getCount()
        Get the number of records in the table
      • getCharsetName

        public static java.lang.String getCharsetName​(int platformID,
                                                      int encodingID)
        Get the charset name for a given platform, encoding and language
      • toString

        public java.lang.String toString()
        Get a pretty string
        Overrides:
        toString in class TrueTypeTable