Ejemplo n.º 1
0
 private static void ReadGlyph(BinaryReader reader, out FontFaceGlyph glyph)
 {
     glyph = new FontFaceGlyph
     {
         Rectangle = new Rectangle
         {
             X      = reader.ReadInt32(),
             Y      = reader.ReadInt32(),
             Width  = reader.ReadInt32(),
             Height = reader.ReadInt32()
         },
         FontArtIndex     = reader.ReadInt32(),
         WidthLine        = reader.ReadInt32(),
         WidthLineXOffset = reader.ReadInt32(),
         BaseLineYOffset  = reader.ReadInt32()
     };
 }
Ejemplo n.º 2
0
    public static FontFace Read(BinaryReader reader)
    {
        var result = new FontFace();

        result.BaseLine = reader.ReadInt32();
        var glyphCount = reader.ReadInt32();

        result.FontArtCount  = reader.ReadInt32();
        result.LargestHeight = reader.ReadInt32();
        result.Size          = reader.ReadInt32();
        result.AntiAliased   = reader.ReadInt32() == 1;
        result.Name          = reader.ReadPrefixedString();

        var glyphs = new FontFaceGlyph[glyphCount];

        for (var i = 0; i < glyphCount; ++i)
        {
            ReadGlyph(reader, out glyphs[i]);
        }

        result.Glyphs = glyphs;

        return(result);
    }