ots
ots copied to clipboard
Sanitizer for OpenType
Hello, With the default set of compiler flags on Debian, the following warnings appear: ``` ../src/cff_charstring.cc: In function ‘bool {anonymous}::ExecuteCharStringOperator(ots::OpenTypeCFF&, int32_t, size_t, const ots::CFFIndex&, const ots::CFFIndex&, ots::Buffer*, ots::Buffer*, std::stack*, bool*,...
According to the [post table spec](https://docs.microsoft.com/en-us/typography/opentype/spec/post), > Names must be no longer than 63 characters; some older implementations may assume a length limit of 31 characters. This implements a check...
In deciding to not support bitmap fonts at all, OTS completely ignores many cultures and the ability to write crisp small print:  Furthermore, it...
Svace static analyzer reported that the result of shift at https://github.com/khaledhosny/ots/blob/5cbcf1bdfac88025f09c40b25b3b5603c907a4ff/src/cff.cc#L219 is always zero. Looks like `8` should be changed to `4`.
All the fonts should be OFL or MIT I believe, but I think I should double check and list them all.
Unlike CFF1 a CFF2 CharString can be empty since the **endchar** operator is removed (section 4.2 of [The CFF2 CharString Format](https://docs.microsoft.com/en-us/typography/opentype/spec/cff2charstr#4-charstring-operators)). However for an empty CFF2 CharString the sanitizer returns...
https://github.com/khaledhosny/ots/blob/f87b4556191e4132ef5c47365762eb88ace97fc3/src/cmap.cc#L242 I think it needs to add id_delta here to get the correct glyph index before checking the glyph is within range and non-negative.
As read the source it looks like that, **data chunks** of Default UVS Tables and Non-Default UVS Tables must be ordered the same as `varSelector`s, but I did not see...
As discussed in https://github.com/adobe-type-tools/afdko/issues/1095, it seems [ots's check of `hhea.caretOffset`](https://github.com/khaledhosny/ots/blob/968e5f98ded4b90105ce78724e7af6940702b84f/src/metrics.cc#L52-L57) may be a bit overzealous.
Because OTS [does not support COLR or CPAL](https://github.com/khaledhosny/ots/blob/master/docs/DesignDoc.md) then those tables are dropped by OTS. It would therefore be a useful enhancement to support those, so that color fonts can...