예제 #1
0
        public static DefaultUVS Read(BinaryReaderFont reader)
        {
            DefaultUVS value = new DefaultUVS {
                numUnicodeValueRanges = reader.ReadUInt32()
            };

            value.ranges = UnicodeRange.ReadArray(reader, value.numUnicodeValueRanges);
            return(value);
        }
예제 #2
0
        public static VariationSelector Read(BinaryReaderFont reader, long start)
        {
            VariationSelector value = new VariationSelector {
                varSelector         = reader.ReadUInt24(),
                defaultUVSOffset    = reader.ReadUInt32(),
                nonDefaultUVSOffset = reader.ReadUInt32()
            };
            long position = reader.Position;

            if (value.defaultUVSOffset != 0)
            {
                reader.Position  = start + value.defaultUVSOffset;
                value.defaultUVS = DefaultUVS.Read(reader);
            }
            if (value.nonDefaultUVSOffset != 0)
            {
                reader.Position     = start + value.nonDefaultUVSOffset;
                value.nonDefaultUVS = NonDefaultUVS.Read(reader);
            }
            reader.Position = position;
            return(value);
        }