Behdad Esfahbod
f07ce68f9c
Remove unused function
2022-12-23 13:37:59 -07:00
Matthias Clasen
0a2f3673b9
[paint] Use tags for image formats
...
This fits better with the rest of the
HarfBuzz API.
2022-12-23 13:37:59 -07:00
Matthias Clasen
485ba9beb3
[paint] Spell out rectangle in the API
...
No need to abbreviate this.
2022-12-23 13:37:59 -07:00
Matthias Clasen
37f3f0fcc2
[paint] Change the image callback
...
Instead of passing the glyph ID, give
it the image blob, a mimetype, and
glyph extents (if available).
Update all callers.
2022-12-23 13:37:59 -07:00
Matthias Clasen
9876e30c6e
test: Support png images via paint_image
2022-12-23 13:37:59 -07:00
Matthias Clasen
0d890061d1
Rename 'solid' to 'color'
...
'solid' does not really describe well what
the function does, and there is no strong
reason to stick 1:1 to the terminology used
in the spec.
2022-12-23 13:37:59 -07:00
Matthias Clasen
2c07828603
test: More debug spew
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
fdf17dbf34
Try fixing bots
2022-12-23 13:37:59 -07:00
Matthias Clasen
5c6329555e
Apply root transform
...
This commit applies scale, slant is still missing.
2022-12-23 13:37:59 -07:00
Matthias Clasen
794fa4c3c1
sweep gradients etc
2022-12-23 13:37:59 -07:00
Matthias Clasen
d07fdc69dd
test: dump color lines
2022-12-23 13:37:59 -07:00
Matthias Clasen
627c857f8b
rename pop_group_and_composite
2022-12-23 13:37:59 -07:00
Matthias Clasen
c9350838c7
assorted fixes and changes
2022-12-23 13:37:59 -07:00
Matthias Clasen
5a123e8691
quick testcase
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
0066e824f0
[util] Fix vertical positioning with --glyphs
2022-12-23 13:37:38 -07:00
Behdad Esfahbod
265b699fbd
[util] Improve --glyphs
2022-12-23 13:31:48 -07:00
Behdad Esfahbod
d45f7265e9
[hb-view/hb-shape] Add --glyphs
...
This makes hb-view take output of hb-shape and render it.
2022-12-23 13:13:29 -07:00
Garret Rieger
1a51f71afd
[subset] don't segfault when --help-all is specified w/ instancing options.
2022-12-19 16:02:05 -07:00
Nirbheek Chauhan
c7dd63d1a0
meson: Provide binaries when built as a subproject
2022-12-18 08:28:55 +02:00
Khaled Hosny
6add69a6ec
[hb-view] Allow building without cairo-ft
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3925
2022-12-16 21:10:15 +02:00
Garret Rieger
9fbe52b88d
[subset] enable instancing tests by default.
2022-12-12 20:24:24 +00:00
Garret Rieger
eda02c2ebd
[subset] Move hb_subset_preprocess to be non-experimental.
2022-12-08 16:32:24 -07:00
Behdad Esfahbod
1b86753031
[hb-subset] Support -u, -g, -t
...
For --unicodes, --gids, --text.
2022-12-05 11:44:52 -07:00
Behdad Esfahbod
a4a4078632
Merge pull request #3893 from googlefonts/preprocess_test
...
[subset] Fix testing of preprocess
2022-11-24 11:56:58 -07:00
Behdad Esfahbod
2e9b270a49
[hb-view] Fix cairo slanting condition
...
hb-draw already does slanting. If NOT hb-draw, we should slant
through cairo path. Donno why this was untested before.
This was double-slanting with hb-draw, and not slanting without it.
2022-11-23 16:18:39 -07:00
Garret Rieger
4c49daf7cd
[subset] actually use the preprocessed face in hb-subset.
...
Tests weren't actually using the preprocessed face due to this typo in util/hb-subset.
2022-11-23 22:33:57 +00:00
Behdad Esfahbod
8f15fb1252
[util] Move variable closer to use
2022-11-13 17:06:58 -07:00
Behdad Esfahbod
0e4f579493
[util/hb-view] Default HB_DRAW to 1
...
See comments.
2022-10-31 13:51:24 -06:00
Garret Rieger
515863e57c
[subset] Remove add accelerator flag, replace with new api method.
...
Adds hb_subset_preprocess() which preprocesses the face and attaches accelerator data.
2022-10-13 23:42:00 +00:00
Garret Rieger
3394ec7048
[subset] use subset accelerator in tests.
...
This ensures it produces equivalent subsets as without the accelerator.
2022-10-13 23:02:54 +00:00
Wez Furlong
e3548c2069
hb-view: Detect WezTerm and use iterm2 image protocol
...
Similar to the logic that detects iterm2, but look for
TERM_PROGRAM=WezTerm which identifies wezterm is present.
This allows hb-view to output an image directly to the terminal.
2022-09-03 17:15:03 +02:00
Behdad Esfahbod
f43dadb8ee
Rename kashida -> tatweel
2022-07-30 10:23:03 -06:00
Behdad Esfahbod
4f09ea5e6b
[hb-shape] Add --safe-to-insert-kashida flag
...
https://github.com/harfbuzz/harfbuzz/pull/3762
2022-07-30 10:12:24 -06:00
Behdad Esfahbod
61d0c54701
[ft] Pass design, not normalized, coords to freetype
...
Needed for avar2 to work.
2022-07-23 13:26:18 -06:00
Behdad Esfahbod
a66ba594b4
[util] Fix stack-underflow
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3737
2022-07-19 16:32:32 -06:00
Behdad Esfahbod
c6ef11daf5
[util] Fix build with HB_NO_VAR
2022-07-19 15:19:52 -06:00
Qunxin Liu
2a4773e43d
add option "--instance", store axes_location in subset_plan and drop all
...
variation tables when all axes are pinned at default
2022-07-18 14:59:07 -06:00
Behdad Esfahbod
1eb8e82086
[util] Accept space as delimiter for --features/--variations
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3715
2022-07-18 14:49:04 -06:00
Behdad Esfahbod
faac252f9f
[util/hb-ot-shape-closure] Fix showing glyph names
2022-07-18 12:23:57 -06:00
Behdad Esfahbod
38f2ec1703
[hb-shape] Move shape_output_t into separate file
2022-07-18 12:17:08 -06:00
Behdad Esfahbod
94be459808
[hb-shape] Internal rename
2022-07-18 12:13:48 -06:00
Behdad Esfahbod
faa8cdc898
[util] Allow HB_CHAFA=2/3 to enable wedges/all symbols in Chafa
2022-07-18 10:22:19 -06:00
Behdad Esfahbod
b4e95965c8
[util] Revert Chafa to use simple blocks only
...
The wedges are nice but not available on Mac.
Fixes https://github.com/harfbuzz/harfbuzz/issues/3729
2022-07-18 10:14:14 -06:00
Behdad Esfahbod
ab21c4c283
[hb-view] Add one to row of padding
2022-07-14 16:02:10 -06:00
Behdad Esfahbod
2da36cf99a
[hb-view] Use envvar HB_CHAFA=0 to disable Chafa output
2022-07-14 15:57:43 -06:00
Behdad Esfahbod
76e6feb77f
[util/ansi] Enable all symbols in Chafa
...
Gives vastly smoother output. The previous setting was
equivalent to our in-house renderer.
2022-07-14 13:45:39 -06:00
Behdad Esfahbod
679c87ca36
[util/ansi] Fix chafa cell width/height
...
No idea why it was set to 10/20 instead of 8/16.
2022-07-14 13:39:14 -06:00
jfkthame
0cd404d0b8
Typo fix in hb-subset
...
s/substract/subtract/
2022-07-09 13:34:48 -06:00
Garret Rieger
38e81f2be9
[subset] Add --layout-scripts command line flag.
2022-06-30 21:09:11 +00:00
Behdad Esfahbod
f8d052df6d
[ansi-print] Remove impossible condition
2022-06-22 18:35:48 -06:00
Behdad Esfahbod
251320ea22
[ansi-print] Whitespace
2022-06-22 16:44:07 -06:00
Behdad Esfahbod
0d59d7952c
[ansi-print] Precision
2022-06-22 16:41:02 -06:00
Behdad Esfahbod
c695a09154
[ansi-print] Reorder cases; harmless
2022-06-22 16:33:37 -06:00
Behdad Esfahbod
ae0fce31cd
[ansi-print] Fix quadrants
2022-06-22 16:31:21 -06:00
Behdad Esfahbod
2ebaf0c5ba
[ansi-print] Fix unicolor detection
2022-06-22 16:22:02 -06:00
Behdad Esfahbod
a4db80ca0a
[ansi-print] Fix color calculation
...
Still something's wrong.
2022-06-22 16:13:53 -06:00
Behdad Esfahbod
6dd7e31f71
[util] Accept | as delimiter in Unicode parsing
2022-05-31 04:09:59 -06:00
Cosimo Lupo
cc0f1f3b60
Expose --passthrough-tables option to hb-subset CLI tool
2022-04-12 10:40:46 -06:00
Behdad Esfahbod
56f11ec938
[buffer] Add HB_BUFFER_FLAG_PRODUCE_UNSAFE_TO_CONCAT
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/3454
2022-02-18 17:52:27 -06:00
Behdad Esfahbod
c0b2f50c0b
[util] Rename template typenames to avoid clashing with actual types
...
Apparently MSVC2015 can confuse them
Fixes https://github.com/harfbuzz/harfbuzz/issues/3379
2022-02-18 12:29:14 -06:00
Behdad Esfahbod
096121badb
[util] Implement --sub-font
...
Internally creates a font at 2x and creates a sub-font from it...
2022-02-13 13:21:15 -06:00
Behdad Esfahbod
57aa8c3b3a
[draw] Another try at a stable draw moveto semantic
2022-02-13 13:21:15 -06:00
Behdad Esfahbod
640b6ffddd
[util] Default font-funcs to 'ot' instead of 'ft'
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
9cc9ffe352
[util/draw] If HB_DRAW is not set, choose depending on cairo version
...
If HB_DRAW=0, don't use it, if HB_DRAW=1, use it, if unset, choose depending
on cairo version
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
22f2c78c28
[util/draw] Explicitly chain from render_color_glyph to render_glyph
...
This seems to be more robust. See:
https://github.com/harfbuzz/harfbuzz/pull/3411#issuecomment-1033176635
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
6a3dec357c
[util/draw] Use hb-draw in hb-view only if HB_DRAW=1
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
18b8a1c345
[draw] Fix conversion warnings
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
6812f7ee1e
[draw] Implement COLRv0 fonts
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
5c558586eb
[util/draw] Apply slant to non-user-fonts as well
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
4818b7ed72
[util] Add --font-slant
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
cfc06c24d5
[util/draw] Render color glyphs if cairo API available
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
542f8269cb
[util/draw/ft] Use hb-draw for font-funcs=ft as well
...
If cairo is >= 1.17.5.
This essentially breaks emoji and bitmap fonts for now.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
5d2df1208a
[util] Use hb-draw to render alternatively to cairo-ft
...
Is automatically enabled if cairo is recent enough, and font-funcs are
not 'ft'.
Uses cairo-user-font backend internally.
2022-02-13 13:21:14 -06:00
Behdad Esfahbod
d35f380126
[util] Change "All shapers failed." message to "Shaping failed."
...
Since we now emit this when verification fails as well.
2022-01-29 09:08:20 -07:00
Behdad Esfahbod
61823838f9
[buffer] Add HB_BUFFER_FLAG_VERIFY
...
Move buffer verification code inside the library, from util/.
Part of https://github.com/harfbuzz/harfbuzz/issues/3010
2022-01-28 13:53:44 -07:00
Behdad Esfahbod
36b1561715
Implement hb-shape --verify unsafe-to-concat flag
...
15 tests failing. Those look like legit places that unsafe-to-concat
needs more implementation.
2022-01-22 11:53:18 -07:00
luz paz
e2e305066a
Fix various typos
...
Found via `codespell -q 3 -S ./perf/texts -L actualy,ba,beng,fo,gir,inout,nd,ot,pres,ro,te,teh,timne`
2022-01-16 05:39:03 -08:00
Behdad Esfahbod
52f5711ed0
[buffer] Add hb_buffer_create_similar()
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1555
2022-01-03 11:57:42 -07:00
Behdad Esfahbod
d0c3515ce4
[util] Copy unicode_funcs in copy_buffer_properties()
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
2022-01-03 11:26:41 -07:00
Behdad Esfahbod
34f5b855aa
[util] Simplify copy_buffer_properties()
...
Now that hb_buffer_append() overlays segment_properties we can do this.
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
2022-01-03 11:25:45 -07:00
Behdad Esfahbod
101d07efd9
[util] Move copy_buffer_properties() out of loop
...
Now that hb_buffer_append() overlays properties, we can do this.
Part of https://github.com/harfbuzz/harfbuzz/issues/1555
2022-01-03 11:25:40 -07:00
Behdad Esfahbod
720ab0883b
[util] Add --single-par
...
Use it in aots tests
Fixes https://github.com/harfbuzz/harfbuzz/issues/3129
Related https://github.com/harfbuzz/harfbuzz/issues/3298
2021-11-25 11:49:16 -07:00
Behdad Esfahbod
b58afe586f
[util] Undo treat as single-paragraph text provided on cmdline
...
Reverts d92ee726ce
except that it does so even in batch mode.
Am going to add a --single-par mode that will affect all input
modes.
Part of https://github.com/harfbuzz/harfbuzz/issues/3129
Fixes https://github.com/harfbuzz/harfbuzz/issues/3298
2021-11-25 11:34:24 -07:00
Behdad Esfahbod
da500568de
[API] Add hb_buffer_[sg]et_not_found_glyph() and --not-found-glyph
...
Instead of using gid=0 when a character is not found in the font,
client can now set a custom value. This is useful for shaper-driven
font fallback and to differentiate that from .notdef glyph.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1360
2021-10-26 08:02:29 -06:00
Garret Rieger
d700646c33
[subset] In preperation for 3.0.0 release remove legacy subsetting api methods.
2021-09-16 15:31:29 -06:00
Behdad Esfahbod
cd77846bd9
[util] Fix leak of an hb_font_t
2021-09-14 08:35:19 -04:00
Behdad Esfahbod
da285d511f
[util/shape-consumer] Simplify font tracking
2021-09-14 08:28:12 -04:00
Khaled Hosny
838d670752
[subset] Improve alignment of --help-all message
2021-09-08 15:12:52 +02:00
Behdad Esfahbod
04cf6212d7
[util/hb-subset] Fix --version and --help again
...
38ad093216
2021-08-30 18:35:26 -06:00
Behdad Esfahbod
fdce294120
[util/hb-subset] Print error and suggest filing github issue if operation fails
...
https://github.com/harfbuzz/harfbuzz/issues/3173#issuecomment-906715780
2021-08-29 09:46:42 -06:00
Behdad Esfahbod
38ad093216
[util/hb-subset] Don't ignore errors during face parsing
...
Was ignoring file-not-found errors.
2021-08-29 09:46:42 -06:00
Garret Rieger
1e1438c4fb
[subset] fix --*-file options in hb-subset. ( #3176 )
...
The previous change to add -/+ versions of each set type broke all of the --*-file input options since all of the parse functions now default to replacing the set if the + variant is not being used. This fixes the issue by changing parse_file_for to pass '+' as the name to the parsing function. This triggers the append mode.
2021-08-26 14:59:29 -06:00
Garret Rieger
9db494f517
[subset] Update remaining subset input sets to use inversion for all. ( #3172 )
...
* [subset] Update remaining subset input sets to use inversion for all.
* [subset] Update flag help for remaining sets to mention -=.
2021-08-26 10:51:38 -06:00
Behdad Esfahbod
99356ea5f0
Merge pull request #3150 from harfbuzz/item-context-tests
...
[test] Add tests for item context
2021-08-25 17:19:06 -06:00
Garret Rieger
75efade7a4
[subset] format --gids and --unicodes help messages better.
2021-08-25 14:51:21 -07:00
Garret Rieger
fa4bf7cf58
[subset] use inverted sets for glyph id input.
...
Adds --gids-=, --glyphs-=, --text-=, --unicodes-= options. Use inverted sets to represent all glyphs and/or all unicodes.
2021-08-25 14:31:11 -07:00
Garret Rieger
8f4f47df7c
[subset] use inverted set for all unicodes.
...
Modify the code that handles input->unicodes to be safe with possibly inverted sets. Also adds --unicodes-= and --unicodes+= flags.
2021-08-25 13:34:05 -07:00
Garret Rieger
f2441a4b65
[subset] Remove retain all layout features flag.
...
Instead use inverted sets to handle requesting all features. Modifies feature collection in subset plan to intersect the set of requested features against the features in the font. This prevents iterating a fully filled feature tag set.
2021-08-24 18:17:07 -06:00
Khaled Hosny
430224b1a0
[buffer] Handle pre/post-context in buffer_append
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1843
2021-08-24 02:11:17 +02:00
Khaled Hosny
6ca0ffd42e
[util] Add --unicodes-before/after
...
Parallel to --unicodes for --text-before/after. To be used in tests.
2021-08-24 02:08:01 +02:00