Commit Graph

15802 Commits

Author SHA1 Message Date
Behdad Esfahbod 6d2705a719 [justify-demo] Help message 2023-03-10 12:40:57 -07:00
Simon Cozens 2d8634624c Add Tifinagh to list of both-directions scripts 2023-03-10 10:55:11 -07:00
Jean-Michaël Celerier 905eeee4a4 harfbuzz-config.cmake: support static library build 2023-03-09 20:31:39 +02:00
Garret Rieger 28b05e1cb6 [subset] Fix memory leak in glyf subset.
Fixes fuzzer issue: https://oss-fuzz.com/testcase-detail/6525813890875392.
2023-03-08 17:02:04 -07:00
Garret Rieger 9286e12525 Don't subset a glyf table with an unknown format.
Fixes fuzzer issue: https://oss-fuzz.com/testcase-detail/4875306193518592
2023-03-08 14:51:54 -07:00
Behdad Esfahbod cfa9541daa [glyf] "Support" glyf version 1 2023-03-08 10:35:39 -07:00
Behdad Esfahbod 552290f604 [gvar] Fix out-of-memory access issue
Fixes https://oss-fuzz.com/testcase-detail/5953342850596864
2023-03-08 10:25:26 -07:00
Behdad Esfahbod 7327006d68 [GSUB] Support SingleSubst in get_glyph_alternates
Fixes https://github.com/harfbuzz/harfbuzz/discussions/4146
2023-03-07 21:06:01 -07:00
Behdad Esfahbod 69183217df Add test-gsub-get-alternates.cc 2023-03-07 20:56:56 -07:00
Behdad Esfahbod ea17c7a81a [beyond-64k] Implement gvar support
https://github.com/harfbuzz/boring-expansion-spec/issues/85
2023-03-07 14:23:39 -07:00
Behdad Esfahbod f325aba561 [VarComposites] Minor rename 2023-03-06 13:07:42 -07:00
Khaled Hosny b4b089c427 [docs] Disable gtdoc-check by default
It slows build as it causes documentation to be always rebuilt. We now
disable it by default and enable it on relevant CI jobs.
2023-03-06 06:06:06 +02:00
Behdad Esfahbod d165afec1d [justify-demo] Create new fonts all the time
The hb.shape_justify() call modifies the font. This was messing
up justification. Create new fonts all the time.
2023-03-04 21:09:26 -07:00
Khaled Hosny 690145fa00 [justify-demo] Rewrite in a simpler way
No need to overthink it, append text words to the line and reshape, no
need to shape the whole text first and do complicated glyph/input
mapping. Much simpler code and as fast.
2023-03-04 07:19:20 +02:00
Behdad Esfahbod e9d6f23b5d [justify-demo] Fix for LTR typesetting 2023-03-03 17:15:18 -07:00
Behdad Esfahbod 5cf54aedde [justify-demo] Guess segment properties 2023-03-03 17:01:12 -07:00
Behdad Esfahbod 5c334b9686 [justify-demo] Fix crash if font has no variation axis 2023-03-03 16:53:44 -07:00
Behdad Esfahbod ab249fd24b [justify] Fix shrink/expand conditions 2023-03-04 01:46:07 +02:00
Khaled Hosny 039ea9adda [justify] Add demo GTK app 2023-03-04 01:44:01 +02:00
Behdad Esfahbod be47182d48 [hb-cairo] Add Black Foundry copyright 2023-03-03 11:10:16 -07:00
Behdad Esfahbod ab4c321180 [justify] Set out params in more cases 2023-03-03 09:31:16 -07:00
Khaled Hosny e57defc07c [justify] Set var_value when expanding/shrinking to max
When expanding/shrinking the buffer to max (and still not fitting), we
need to also set var_value to the axis max/min otherwise client not have
the correct axis value to draw with.
2023-03-03 09:20:29 -07:00
Behdad Esfahbod a2efa5b489 [map] Another try at fixing old Mac build
https://github.com/harfbuzz/harfbuzz/issues/4138
2023-03-03 09:15:46 -07:00
Khaled Hosny bfab56d3b5 [font] Typo 2023-03-03 13:14:05 +02:00
Khaled Hosny 60841e2618 7.1.0 2023-03-03 01:05:43 +02:00
Qunxin Liu e471ef77f9 [instancer] fix a runtime error
runtime error: -1 is outside the range of representable values of type 'unsigned int'
2023-03-02 14:13:17 -07:00
Behdad Esfahbod 43dbdd9db6 [justify] Document algorithm 2023-03-02 13:42:52 -07:00
Behdad Esfahbod c98bb4cf9c [justify] Fix up after recent changes
Oops.
2023-03-02 13:18:06 -07:00
Behdad Esfahbod fb067390e4 [docs] Fix a warning 2023-03-02 11:40:45 -07:00
Behdad Esfahbod fe83736e26 [sanitize] Protect against an underflow 2023-03-02 11:35:42 -07:00
Behdad Esfahbod 08784baf10 [GSUB/GPOS] Fix sanitization in Format1
Fixes https://oss-fuzz.com/testcase-detail/5120727025319936
2023-03-02 10:48:30 -07:00
Behdad Esfahbod 7897173870 [justify] Fix compiler warnings 2023-03-02 10:38:12 -07:00
Behdad Esfahbod be64cae164 [map] Another try at fixing old Mac builds
Maybe fixes https://github.com/harfbuzz/harfbuzz/issues/4138
2023-03-02 09:50:38 -07:00
Behdad Esfahbod 67e01c1292 [map] Try to work around old Mac compiler bug
Maybe fixes https://github.com/harfbuzz/harfbuzz/issues/4138
2023-03-01 20:08:17 -07:00
Khaled Hosny e359f46a20 Fix build 2023-03-02 03:06:53 +02:00
Behdad Esfahbod e8f94f9e12
Merge pull request #4144 from harfbuzz/justify
Justify
2023-03-01 16:34:01 -07:00
Behdad Esfahbod 6de9d2b89f [justify] Rename hb-view --width to hb-view --justify-to 2023-03-01 14:32:06 -07:00
Behdad Esfahbod 25c66d633d [justify] Wrap in HB_EXPERIMENTAL_API 2023-03-01 14:23:12 -07:00
Behdad Esfahbod 96d4ed0931 [justify] Document API 2023-03-01 14:23:12 -07:00
Behdad Esfahbod d29d7b7a3d [algs] Adjust solve_itp 2023-03-01 14:23:12 -07:00
Behdad Esfahbod aa10deaf42 [justify] Print default buffer width in hb-shape --width=-1 2023-03-01 14:23:12 -07:00
Behdad Esfahbod 93252c6fc3 [justify] Debug output 2023-03-01 14:23:12 -07:00
Behdad Esfahbod b937edfb14 [justify] Add min/max target_width
Speeds up solving when some slack available.
2023-03-01 14:23:12 -07:00
Behdad Esfahbod 6e483c4061 [shape] Add hb_shape_justify() and hb-view --width 2023-03-01 14:23:12 -07:00
Behdad Esfahbod ee4822f969 [algs] Add solve_itp method
Port from kurbo.
2023-03-01 14:23:12 -07:00
Behdad Esfahbod c67c0086ef [GPOS] Fix indexing in MarkLigPos
This was broken in 8708b9e081.

Fixes https://github.com/harfbuzz/harfbuzz/issues/4142
2023-03-01 13:32:44 -07:00
Matthias Clasen 01d34763f0 Typo fix 2023-03-01 10:11:47 -07:00
Behdad Esfahbod 2d33a6b4df [subset-fuzzer] Protect against overflow
Fixes
https://github.com/harfbuzz/harfbuzz/issues/4137#issuecomment-1448994447
2023-02-28 15:31:45 -07:00
Behdad Esfahbod 5226d69733 [font] Make set_variation() respect currently-set variations
Fixes https://github.com/harfbuzz/harfbuzz/issues/4143
2023-02-28 14:50:07 -07:00
Behdad Esfahbod 91627daee2 [outline] Rename internal function 2023-02-28 14:31:25 -07:00