Commit Graph

6648 Commits

Author SHA1 Message Date
Michiharu Ariza e2856c2d85 retain FDSelect & FDArray with --retain-gids
so in sync with fonttools behavior
2019-02-07 15:32:32 -08:00
Michiharu Ariza a5fa76977b Merge branch 'master' into cff-retain-gids 2019-02-07 10:28:13 -08:00
Michiharu Ariza 214d0b024b minor change 2019-02-07 10:27:43 -08:00
Ken Cunningham 7859decdd0 hb-coretext.cc: clean up macosx test
TARGET_OS_OSX was introduced only in late OS versions
so always returns as "0" on older systems.

if !TARGET_OS_IPHONE can work, as it returns as !0 on older
systems where TARGET_OS_IPHONE is not defined, but is not
specific

if TARGET_OS_MAC && !(defined(TARGET_OS_IPHONE) && TARGET_OS_IPHONE)
is both specific and accurate on all systems.
2019-02-05 20:26:49 -08:00
Michiharu Ariza 30b781f20a Merge branch 'master' into cff-retain-gids 2019-02-01 14:50:34 -08:00
Michiharu Ariza c12862657f added desubroutinize & retain-gids full test cases with CFF fonts
and CFF retain-gids fixes
2019-02-01 14:50:01 -08:00
Michiharu Ariza f2908b4d8f Implement subset --regain-gids option with CFF1/2
along with api tests & expected results
2019-01-31 14:16:37 -08:00
Behdad Esfahbod 1e06282105 Adjust hb_is_signed<>
Fixes https://github.com/harfbuzz/harfbuzz/issues/1535
2019-01-31 13:57:17 -08:00
Behdad Esfahbod 21ea1c9152 Remove stale comment 2019-01-31 13:57:17 -08:00
Behdad Esfahbod d983c529b6
Merge pull request #1564 from googlefonts/retain_gids
[subset] Add --retain-gids option to the subsetter.
2019-01-30 17:17:59 -05:00
Behdad Esfahbod 55d1d7c8bc 2.3.1 2019-01-30 13:54:15 -08:00
Garret Rieger 198859bb37 [subset] For retain gids don't truncate glyphs past the highest requested subset glyph. 2019-01-29 13:19:21 -08:00
Garret Rieger 05e99c86ba [subset] A few small fixes for the new subset plan api. 2019-01-29 13:19:21 -08:00
Garret Rieger bdbe047d6c [subset] Update hb-subset-plan.cc to match hb-subset-plan.hh. 2019-01-29 13:19:21 -08:00
Garret Rieger 74c44ffeba [subset] Update hb-subset-glyf.cc to use new hb-subset-plan API. 2019-01-29 13:19:21 -08:00
Garret Rieger 4842294b86 [subset] Update gsub to use glyphset() method of subset plan. 2019-01-29 13:19:21 -08:00
Garret Rieger 853b1f1aa5 [subset] Correct maxp num glyph's to use new subset plan method. 2019-01-29 13:19:21 -08:00
Garret Rieger 846e05a298 [subset] Re-add glyphs array to subset plan, with new name 'glyphs_deprecated'. Switch CFF subsetting to use it. 2019-01-29 13:19:21 -08:00
Garret Rieger 03e88eab5c Re-implement HMTX/VMTX subsetting. Update it to support glyph renumbering and simplify the implementation. 2019-01-29 13:19:21 -08:00
Garret Rieger 925be29223 Update hb-ot-vorg-table and hb-ot-layout-common to use the updated subset plan api. 2019-01-29 13:19:21 -08:00
Garret Rieger 4af3be6ef8 Remove glyph array from subset plan, make num_glyphs and glyphset private. 2019-01-29 13:19:21 -08:00
Garret Rieger 23f364429d [subset] Fix hdmx subsetting when retain gids is enabled. 2019-01-29 13:19:21 -08:00
Garret Rieger 2da1654aef [subset] Compute num_glyphs during subset plan construction.
Update maxp to use the correct num glyphs.
2019-01-29 13:19:21 -08:00
Garret Rieger 96b038f375 [subset] fix failure to init instruction ranges values for an invalid glyph. 2019-01-29 13:19:21 -08:00
Garret Rieger 4b1ac3a2fa [subset] Do some refactoring in hb-subset-glyf.cc.
- Extract code out into helper methods in several places.
- Bundle loca address, size and is short into a struct.
2019-01-29 13:19:21 -08:00
Garret Rieger b7f971884e Add retain_gids option to subset input. Update glyf and loca handling to respect retain_gids. 2019-01-29 13:19:21 -08:00
Behdad Esfahbod 9a1df82e3f [uniscribe] Whitelist function type cast 2019-01-28 14:15:18 -05:00
Behdad Esfahbod 6e1c3eaf70 Fix sign comparison error 2019-01-28 14:12:41 -05:00
Behdad Esfahbod 9db7a7da63 Fix warning
c:\projects\harfbuzz\src\hb-ot-color-cbdt-table.hh(59): warning C4146: unary minus operator applied to unsigned type, result still unsigned [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
2019-01-28 14:09:59 -05:00
Behdad Esfahbod 51b584880e [pragma] Silence MSVC unknown-pragma warning 2019-01-28 14:09:45 -05:00
Behdad Esfahbod 60022ecced Fix -Wcast-function-type warnings in util/ with gcc 4.8 2019-01-26 14:04:51 +01:00
Behdad Esfahbod f398097529 More static constexpr 2019-01-25 16:08:25 +01:00
Behdad Esfahbod e970de48bc [AAT] Minor sign 2019-01-24 18:16:17 +01:00
Behdad Esfahbod a371a28cda [AAT] Use a ring buffer for ligature stack
I think Apple does very similarly, but probably with a stack size of 16.
We do it with a stack size that is currently set to 64.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1531
2019-01-24 18:12:25 +01:00
Behdad Esfahbod 7886b1578f Whitespace 2019-01-24 18:06:17 +01:00
Behdad Esfahbod b976940243 [AAT] Handle transition errors during machine operation
Before we used to give up.  Now, just ignore error and continue processing.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1531
2019-01-24 18:01:07 +01:00
Behdad Esfahbod e234bb6a42 [AAT] Ignore machine errors and continue 2019-01-24 17:23:11 +01:00
Behdad Esfahbod 1ec90514f6 [AAT] Minor 2019-01-24 17:21:41 +01:00
Behdad Esfahbod 299eca0c3b [AAT] Handle out-of-bounds classes 2019-01-24 17:17:00 +01:00
Behdad Esfahbod c4623db4a3 [AAT] Minor 2019-01-24 17:10:12 +01:00
Behdad Esfahbod c4e36f97b6 [AAT] Minor 2019-01-24 17:06:16 +01:00
Behdad Esfahbod f60282c5bf More pragma control
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=924848
2019-01-24 16:29:09 +01:00
Behdad Esfahbod fd0889f903 Comment 2019-01-24 16:12:52 +01:00
Behdad Esfahbod 9f31417733 Form cluster for Emoji sub-region tag sequences
Fixes https://github.com/harfbuzz/harfbuzz/issues/1556
2019-01-24 16:08:33 +01:00
Behdad Esfahbod 3ecda71041 Adjust mark offsets when zeroing from fallback mark positioning code
Adjust tests.

Fixes https://github.com/harfbuzz/harfbuzz/issues/1532
2019-01-24 12:28:24 +01:00
Behdad Esfahbod 36fb2b4da9 [AAT] In InsertionChain, set mark to previous-position if inserting
Fixes MORX-31
2019-01-23 20:53:57 +01:00
Behdad Esfahbod baf4d6a68a [AAT] Remove mark_set from InsertionChain 2019-01-23 20:36:07 +01:00
Behdad Esfahbod 0b2fa342de More of previous 2019-01-22 16:36:00 +01:00
Behdad Esfahbod a5e5dd8b42 Fix sign-compare error resulted from promoting unsigned integers to signed larger ints
Clang and gcc know not to warn in these cases, but not nonmainstream compilers
2019-01-22 16:30:07 +01:00
Behdad Esfahbod 32379bbf10 Cast HB_UNTAG results to uint8_t 2019-01-22 12:55:29 +01:00