mirror of
https://github.com/RGBCube/serenity
synced 2025-10-27 20:42:36 +00:00
It turns out that hmtx and OS/2 table values _are_ used when rendering OpenType for PDFs: hmtx is used for the left-side bearing value (which is read in `Painter::draw_glyph()`), and OS/2 is used for the ascender, which Type0's CIDFontType2::draw_glyph() and TrueTypeFont::draw_glyph() read. So instead of not trying to read these tables, instead try to read them but tolerate them failing to read and ignore them then. Follow-up to #23276. (I've seen weird glyph positioning from not reading the hmtx table. I haven't seen any problems caused by not reading the OS/2 table yet, but since the PDF code does use the ascender value, let's read that too.) |
||
|---|---|---|
| .. | ||
| OpenType | ||
| WOFF | ||
| WOFF2 | ||
| BitmapFont.cpp | ||
| BitmapFont.h | ||
| Emoji.cpp | ||
| Emoji.h | ||
| Font.cpp | ||
| Font.h | ||
| FontDatabase.cpp | ||
| FontDatabase.h | ||
| FontStyleMapping.h | ||
| FontWeight.h | ||
| ScaledFont.cpp | ||
| ScaledFont.h | ||
| Typeface.cpp | ||
| Typeface.h | ||
| UnicodeRange.h | ||
| VectorFont.cpp | ||
| VectorFont.h | ||