Behdad Esfahbod
95ccd66481
[hb-view] Set glyph extents in render_color_glyph
...
Works around limitation in cairo-recording-surface unboundedness.
Extents are wrong but at least renders something now.
2022-12-23 13:37:59 -07:00
Matthias Clasen
6cadf280f2
Use hb-cairo-utils in hb-test
...
Just to prove that it works.
2022-12-23 13:37:59 -07:00
Matthias Clasen
8bcd13dd91
small fixup to hb-cairo-utils
2022-12-23 13:37:59 -07:00
Matthias Clasen
6c49822cad
wip: Use hb-paint in hb-view
...
This doesn't paint anything yet.
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
3b32eab38e
[colr] Fix compiler warning
2022-12-23 13:37:59 -07:00
Behdad Esfahbod
e3153654cb
[colr] Fix PNG placement
2022-12-23 13:37:59 -07:00
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