コード例 #1
0
 public static ConstantMapGroup[] ReadArray(BinaryReaderFont reader, uint count)
 {
     ConstantMapGroup[] array = new ConstantMapGroup[count];
     for (int i = 0; i < count; i++)
     {
         array[i] = Read(reader);
     }
     return(array);
 }
コード例 #2
0
        public static new CmapSubtable13 Read(BinaryReaderFont reader)
        {
            CmapSubtable13 value = new CmapSubtable13 {
                format    = reader.ReadUInt16(),
                reserved  = reader.ReadUInt16(),
                length    = reader.ReadUInt32(),
                language  = reader.ReadUInt32(),
                numGroups = reader.ReadUInt32()
            };

            value.glyphs = ConstantMapGroup.ReadArray(reader, value.numGroups);
            return(value);
        }
コード例 #3
0
        public override CharToGlyphTable CreateCharToGlyphTable()
        {
            CharToGlyphTable table = new CharToGlyphTable();

            for (int i = 0; i < numGroups; i++)
            {
                ConstantMapGroup glyph = glyphs[i];
                ushort           id    = (ushort)glyph.glyphID;
                int endCharCode        = (int)glyph.endCharCode;
                for (int j = (int)glyph.startCharCode; j <= endCharCode; j++)
                {
                    table.Add(j, id);
                }
            }
            return(table);
        }