RE: Synthesize cmap from a TrueType Font

Ciaran Kearney <[email protected]> Wed, 7 Aug 2024 16:38:29 +0000
Newsgroups gmane.comp.fonts.freetype.user
Message-ID <DS7PR17MB7066C787C57BDE8418A5E40584B82@DS7PR17MB7066.namprd17.prod.outlook.com>
Hello Werner,

Thank you for your quick response.

Hopefully, the last question, is there a way for me to know at runtime, if =
FreeType has created a new cmap? Is a flag set?

Thanks again,
Ciaran

-----Original Message-----
From: Werner LEMBERG <[email protected]>
Sent: Wednesday, August 7, 2024 4:56 PM
To: Ciaran Kearney <[email protected]>
Cc: [email protected]
Subject: Re: Synthesize cmap from a TrueType Font


Hello Ciaran,


> Just a follow up about the issue I raised earlier:
> https://nam11.safelinks.protection.outlook.com/?url=3Dhttps%3A%2F%2Fgitl
> ab.freedesktop.org%2Ffreetype%2Ffreetype%2F-%2Fissues%2F1289&data=3D05%7
> C02%7Cciaran.kearney%40gonitro.com%7C21f96151c0da4d8ea01808dcb6f98503%
> 7Ce56492bb794a4d6ea0350aced11c54d6%7C0%7C0%7C638586430211037998%7CUnkn
> own%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwi
> LCJXVCI6Mn0%3D%7C0%7C%7C%7C&sdata=3Dwl0n%2Fp1Jeg7HhwCclsdySKlJSY%2FGTPeo
> e6uaX6c8ZU8%3D&reserved=3D0
>
> The new synthesize cmap seems to be incorrect. The wrong glyphs are
> used.

Assuming that the 'Apple Roman' encoding is correct (which you seem to impl=
y), this is a problem of the font - the glyph names are completely wrong.  =
In other words, the font is buggy.

> Is there a reason why we want to synthesize a new cmap?

A Unicode cmap is what virtually everybody wants, since you don't have to s=
witch around cmaps.

> Can I ask FreeType not to synthesize as the document doesn't render
> correctly.

Well, FreeType expects valid fonts.  If you want to make it handle invalid =
fonts you have to maintain a blacklist to catch them and explicitly select =
the desired cmap.  If this is not possible, consider a compilation of the l=
ibrary without defining `FT_CONFIG_OPTION_POSTSCRIPT_NAMES`.


    Werner

The information contained in this email may be confidential. It has been se=
nt for the sole use of the intended recipient(s). If the reader of this mes=
sage is not an intended recipient, you are hereby notified that any unautho=
rized review, use, disclosure, dissemination, distribution, or copying of t=
his communication, or any of its contents, is strictly prohibited. If you h=
ave received this communication in error, please reply to the sender and de=
stroy all copies of the message. To contact us directly, send to privacy@go=
nitro.com. Thank you.