src/hb-ft-colr.hh


Log

Author Commit Date CI Message
Behdad Esfahbod b1258cdd 2025-03-16T16:22:52 Merge branch 'main' into HVF
Behdad Esfahbod 000a0ad7 2025-03-15T14:37:44 [paint] Add push_font_transform() / push_inverse_font_transform() Fixes https://github.com/harfbuzz/harfbuzz/issues/5146
Behdad Esfahbod a0419a89 2025-03-09T05:36:00 Merge branch 'main' into HVF
Behdad Esfahbod 4e5358a2 2025-03-07T15:18:28 [COLRv1] Fix comments Fixes https://github.com/harfbuzz/harfbuzz/issues/5116
Behdad Esfahbod 575e70b0 2025-03-07T12:51:44 [COLR] Use palette 0 if palette index out of range Fixes https://github.com/harfbuzz/harfbuzz/issues/5112
Behdad Esfahbod 6506bd7e 2025-03-06T20:00:54 Merge pull request #4498 from harfbuzz/PaintColrLayers [COLRv1] Optimize PaintColrLayers instead of PaintComposite
Behdad Esfahbod bf55e332 2025-03-06T17:38:50 [ft-colr] Protect against out-of-bounds color indices
Behdad Esfahbod 8685653c 2025-03-06T17:28:09 [ft-colr] Fix crash if palette index is out-of-range
Behdad Esfahbod b13c8127 2025-02-22T22:00:25 [paint] Simplify transforms Transform nodes are rarely no-op anyway. Don't optimize them away.
Behdad Esfahbod 4d525392 2025-02-22T16:43:33 [geometry] Add scale_around_center & skew_around_center
Behdad Esfahbod 120bc2c6 2025-02-22T16:24:35 [paint] Add rotate_around_center
Behdad Esfahbod 453aea05 2025-03-02T16:59:19 [hvgl] Use double instead of float for coords & transforms As "spec" requires.
Behdad Esfahbod 17a83b74 2025-02-26T14:40:02 [COLRv1] Optimize PaintColrLayers instead of PaintComposite See https://github.com/googlefonts/colr-gradients-spec/issues/369#issuecomment-1816913943 and onwards.
Behdad Esfahbod c84e9b95 2025-02-17T15:08:03 [decycler] Change value type from unsigned to uintptr_t Since the node struct is gonna be 3*sizeof(void*) bytes anyway, change value type to use the full space available.
Behdad Esfahbod c7fc03a3 2025-02-16T14:43:09 [ft-colr] Use hb_decycler_t
Behdad Esfahbod 215c8de3 2025-02-15T21:07:47 [ft-colr] Fix cycle-detection accounting Fixes https://github.com/harfbuzz/harfbuzz/issues/5073
Behdad Esfahbod 96579076 2024-11-15T15:33:11 [ft-colr] Don't load SVG table since we don't support it Part of https://github.com/harfbuzz/harfbuzz/issues/4938
Behdad Esfahbod 3d846a8d 2024-03-16T21:49:17 [limits] Centralize graph edge limits
Behdad Esfahbod 06ff3bcb 2023-08-15T14:41:18 [COLR,glyf] Use map instead of set for tracking current glyphs / layers
Behdad Esfahbod 8f039ab4 2023-08-15T11:27:19 [COLR] Avoid infinite-loop through PaintColrLayers Fixes https://github.com/harfbuzz/harfbuzz/issues/4376 Fixes https://oss-fuzz.com/testcase-detail/5717524023738368
Behdad Esfahbod 0c80aec1 2023-08-15T10:30:38 [COLR] Move cycle-detection to the renderer instead of cairo Alternative fix for https://github.com/harfbuzz/harfbuzz/issues/4375
Behdad Esfahbod 47231bdc 2023-08-14T16:52:44 [COLR/cairo/ft] Fixups to paint-color-glyph and implement for hb-ft
Behdad Esfahbod 75e6498d 2023-03-14T12:41:46 Don't use M_PI Fixes https://github.com/harfbuzz/harfbuzz/issues/4166 Happy Pi Day!
Behdad Esfahbod 638e0ed4 2023-01-20T13:01:22 [paint] Overlay custom-palette on top of chosen palette Got to agree this is more ergonomic.
Behdad Esfahbod 7aca3b50 2023-01-18T20:49:06 [COLRv1] Hook up custom palette colors
Behdad Esfahbod e4a41f5e 2023-01-16T16:27:04 [COLRv1] Implement recursive clip boxes Tests need update. hb-view test_glyphs-glyf_colr_1_variable.ttf -u f0c00
Behdad Esfahbod 5f51dd27 2023-01-10T22:57:07 [ft-colr] Minor use false instead of 0
Behdad Esfahbod f84a8e32 2023-01-10T22:43:30 [ft-colr] Comment
Behdad Esfahbod 02751514 2023-01-09T12:26:39 [paint] Align deptch/edge count conditions across two backends
Behdad Esfahbod 839f4b64 2023-01-09T12:01:46 [ft] Fix slanting clip box
Behdad Esfahbod 6c1a4bed 2023-01-09T11:37:39 Better rounding clip boxes
Behdad Esfahbod f283d4d3 2023-01-08T12:42:34 [paint] Try to adjust both renderers to use same clip order
Behdad Esfahbod 5bd6fc1a 2023-01-07T16:32:50 Comment
Behdad Esfahbod 432afa9d 2023-01-07T16:25:30 [paint] Fix paint_extents usage It was broken all this time :(. The two backends do this slightly differently...
Behdad Esfahbod d045de78 2023-01-07T13:55:17 [paint] Optimize PAINT_COMPOSITE At the start of each paint call the current group is clear. So we don't need to start a new group for the backdrop paint. A paint composite really needs one group push, not two.
Behdad Esfahbod 5ea5aacd 2023-01-07T13:24:41 [ft-colr] Adjust for FreeType master color-stop change Part of https://github.com/harfbuzz/harfbuzz/issues/4013
Behdad Esfahbod a5f1f3a0 2023-01-01T13:14:04 [ft] Conditionalize all COLOR code on >= 2.11.1 Fixes https://github.com/harfbuzz/harfbuzz/issues/3994
Behdad Esfahbod 3ff91c44 2022-12-31T14:49:41 [paint] Optimize transform operations again
Behdad Esfahbod 9e3ff0e9 2022-12-31T11:55:45 [paint] Fixup
Behdad Esfahbod 6b47fcb1 2022-12-31T11:40:12 [paint] Add internal push_skew/pop_skew API
Behdad Esfahbod 46adf31b 2022-12-31T11:35:39 [paint] Add internal push_rotate/pop_rotate API
Behdad Esfahbod ce783512 2022-12-31T11:32:15 [paint] Add internal push_scale/pop_scale API
Behdad Esfahbod 7363eb37 2022-12-31T11:24:42 [paint] Add internal push_translate/pop_translate
Behdad Esfahbod a45bf5b0 2022-12-30T11:19:36 [ft-colr] Require FreeType >= 2.11.1 Fixes https://github.com/harfbuzz/harfbuzz/issues/3989
Behdad Esfahbod ae208963 2022-12-26T12:30:39 Add hb-limits.hh
Matthias Clasen 5f5fa4b2 2022-12-26T13:47:35 [ft-colr] Limit the size of the graph we follow This adds the same check that we already do in the native implementation.
Behdad Esfahbod fa1cf15e 2022-12-24T11:56:23 [ft-colr] Whitespace
Behdad Esfahbod 5343eac1 2022-12-24T11:53:43 [ft-colr] Minor use context instead of direct access
Behdad Esfahbod 0b6468b8 2022-12-24T11:50:57 [ft-colr] Minor
Behdad Esfahbod 1c595ec1 2022-12-24T11:40:44 [paint-extents] Lazy-load paint_extents funcs
Behdad Esfahbod 02684751 2022-12-23T17:33:13 [paint-extents] Clean up
Behdad Esfahbod 56a48f8b 2022-12-23T16:44:06 [paint] Don't use extents in hb-view Let the clipbox do its magic. Currently works for ft backend only.
Behdad Esfahbod 47c896f0 2022-12-23T16:20:44 [paint-extents] Hook it up, kinda
Behdad Esfahbod 268d8b7d 2022-12-23T14:45:56 [paint-extents] Start out
Behdad Esfahbod d9875ddc 2022-12-23T12:37:42 [ft-colr] Add depth counter
Behdad Esfahbod 27629039 2022-12-23T12:09:17 [ft-colr] Minor
Behdad Esfahbod 3a1385f0 2022-12-23T12:06:18 [ft-colr] Simplify color-stop callback
Behdad Esfahbod 1cc3b100 2022-12-23T11:55:55 [ft-colr] Ifdef build for older freetype
Behdad Esfahbod 882c2bca 2022-12-23T11:48:41 [ft-colr] Add a paint context
Behdad Esfahbod 7a4b4c64 2022-12-23T11:36:04 [ft-colr] Minor macro
Behdad Esfahbod c453c2fc 2022-12-23T11:33:23 [ft-colr] Fix color-stop iteration
Behdad Esfahbod 15582d5f 2022-12-23T11:14:16 [ft-colr] Apply slant to clipbox
Matthias Clasen 7abd5dcf 2022-12-23T11:49:06 [ft-paint] Fix handling of colorstop iters
Matthias Clasen 393bab4b 2022-12-23T11:02:38 [ft-paint] Apply ClipBox to all glyphs
Matthias Clasen c11ae85c 2022-12-23T09:20:45 [ft-paint] Apply root transform
Matthias Clasen 7fc3fdac 2022-12-23T09:16:26 [ft-paint] Optimize away some transforms
Matthias Clasen 586d1758 2022-12-23T09:21:14 [ft-paint] Fix an oversight
Matthias Clasen 092637f9 2022-12-23T09:14:11 [ft-paint] Fix rounding
Matthias Clasen fe08e956 2022-12-23T09:08:10 [ft-paint] Fix a case of x/y confusion
Matthias Clasen 0d5256e5 2022-12-23T02:41:08 [ft-paint] Fix some fixed->float conversions
Behdad Esfahbod a02c2a91 2022-12-22T22:05:09 [ft-paint] Apply alpha correctly
Behdad Esfahbod 6ebcc9d2 2022-12-22T21:23:45 [ft-paint] Hook up gradients
Behdad Esfahbod 569d5b43 2022-12-22T18:00:02 [ft-paint] Remove dead code
Behdad Esfahbod cfdc34b4 2022-12-22T17:58:36 [ft-paint] Implement FT_COLR_PAINTFORMAT_SKEW
Behdad Esfahbod 64cf17ec 2022-12-22T17:55:25 [ft-paint] Fix center translation
Behdad Esfahbod ddbe4e52 2022-12-22T17:54:01 [ft-paint] Implement FT_COLR_PAINTFORMAT_ROTATE
Behdad Esfahbod 16598e02 2022-12-22T17:51:35 [ft-paint] Default
Behdad Esfahbod a0f7f9e6 2022-12-22T17:50:35 [ft-paint] Implement FT_COLR_PAINTFORMAT_COMPOSITE
Behdad Esfahbod 0ec20144 2022-12-22T17:40:53 [ft] Implement FT_COLR_PAINTFORMAT_COLR_GLYPH
Behdad Esfahbod ac2682c6 2022-12-22T17:36:54 [ft] Start of a COLRv1 renderer
Behdad Esfahbod e2546f5a 2022-12-22T15:50:43 [ft] Add hb-ft-colr.hh