I'm writing a converter for CFF (PostScript Type 2) fonts, and I'm wondering which fields the converter can remove without making any visual difference when the font is used in a PDF file.
I think these fields can be removed or changed:
/FontName/PostScript.FSType/PostScript.OrigFontType/PostScript.OrigFontName/PostScript.OrigFontStyle/FontInfo.version/FontInfo.Notice/FontInfo.Copyright/FontInfo.FullName/FontInfo.FamilyName/FontInfo.Weight/FontInfo.isFixedPitch/UniqueID/XUID
I think these fields must be kept, because they affect the rendering:
/StrokeWidth/PaintType/CharstringType/FontMatrix/Encoding/CharStrings/Private.BlueValues/Private.OtherBlues/Private.FamilyBlues/Private.FamilyOtherBlues/Private.BlueScale/Private.BlueShift/Private.BlueFuzz/Private.StdHW/Private.StdVW/Private.StemSnapH/Private.StemSnapV/Private.Subrs/Private.GlobalSubrs/Private.defaultWidthX/Private.nominalWidthX
I'm not sure about these fields:
/FontInfo.ItalicAngle/FontInfo.UnderlinePosition/FontInfo.UnderlineThickness/FontBBox/BaseFontName/BaseFontBlend/Private.ForceBold/Private.LanguageGroup/Private.ExpansionFactor/Private.initialRandomSeed/Private.unknown12015
So, which of the fields above do and which of them don't make a visual difference in rendering, when the font is used in a PDF file?