protected internal override void Write(FontFileWriter writer) { FontFileStream stream = writer.Stream; for (int i = 0; i < metrics.Count; i++) { HorizontalMetric metric = metrics[i]; stream.WriteUShort(metric.AdvanceWidth); stream.WriteShort(metric.LeftSideBearing); } }
protected internal override void Write(FontFileWriter writer) { FontFileStream stream = writer.Stream; stream.WriteFixed(versionNo); stream.WriteFWord(ascender); stream.WriteFWord(decender); stream.WriteFWord(lineGap); stream.WriteUFWord(advanceWidthMax); stream.WriteFWord(minLeftSideBearing); stream.WriteFWord(minRightSideBearing); stream.WriteFWord(xMaxExtent); stream.WriteShort(caretSlopeRise); stream.WriteShort(caretSlopeRun); stream.WriteShort(caretOffset); stream.WriteShort(0); stream.WriteShort(0); stream.WriteShort(0); stream.WriteShort(0); stream.WriteShort(metricDataFormat); stream.WriteUShort(numberOfHMetrics); }
/// <summary> /// Writes the contents of the head table to the supplied stream. /// </summary> /// <param name="writer"></param> protected internal override void Write(FontFileWriter writer) { FontFileStream stream = writer.Stream; stream.WriteFixed(versionNo); stream.WriteFixed(fontRevision); stream.WriteULong(0); stream.WriteULong(0x5F0F3CF5); stream.WriteUShort(flags); stream.WriteUShort(unitsPermEm); stream.WriteDateTime((long)(createDate - BaseDate).TotalSeconds); stream.WriteDateTime((long)(updateDate - BaseDate).TotalSeconds); stream.WriteShort(xMin); stream.WriteShort(yMin); stream.WriteShort(xMax); stream.WriteShort(yMax); stream.WriteUShort(macStyle); stream.WriteUShort(lowestRecPPEM); stream.WriteShort(fontDirectionHint); stream.WriteShort(1); stream.WriteShort(glyphDataFormat); }