internal EMFFont(DataArrayReader reader) { reader.Read(ref HandleIndex); reader.Read(ref Height); reader.Read(ref Width); reader.Read(ref Escapement); reader.Read(ref Orientation); reader.Read(ref Weight); reader.Read(ref Italic); reader.Read(ref Underline); reader.Read(ref StrikeOut); reader.Read(ref CharSet); reader.Read(ref OutPrecision); reader.Read(ref ClipPrecision); reader.Read(ref Quality); reader.Read(ref PitchAndFamily); FaceName = reader.ReadUnicodeString(32); elfFullName = reader.ReadUnicodeString(64); elfStyle = reader.ReadUnicodeString(32); reader.Read(ref elfVersion); /* 0 for the first release of NT */ reader.Read(ref elfStyleSize); reader.Read(ref elfMatch); reader.Read(ref elfReserved); elfVendorId = new byte[4]; for (int i=0; i<4; i++) reader.Read(ref elfVendorId[i]); reader.Read(ref elfCulture); /* 0 for Latin */ // PANOSE elfPanose; reader.Read(ref bFamilyType); reader.Read(ref bSerifStyle); reader.Read(ref bWeight); reader.Read(ref bProportion); reader.Read(ref bContrast); reader.Read(ref bStrokeVariation); reader.Read(ref bArmStyle); reader.Read(ref bLetterform); reader.Read(ref bMidline); reader.Read(ref bXHeight); }
internal EMFTextRecord(DataArrayReader reader) { reader.Read(ref Bounds); reader.Read(ref GraphicsMode); reader.Read(ref XScale); reader.Read(ref YScale); reader.Read(ref Reference); reader.Read(ref NChars); reader.Read(ref OffString); reader.Read(ref Options); reader.Read(ref ClippingRect); reader.Read(ref OffSpacing); reader.SetPosition(OffString - 8); Text = reader.ReadUnicodeString(NChars); Spacing = new int[NChars]; reader.SetPosition(OffSpacing - 8); for (int i = 0; i < NChars; i++) reader.Read(ref Spacing[i]); }