src


Log

Author Commit Date CI Message
Matthias Clasen bbb89e62 2022-12-23T13:30:26 [paint] Document color lines as transient Just so people don't get ideas.
Behdad Esfahbod a02c2a91 2022-12-22T22:05:09 [ft-paint] Apply alpha correctly
Matthias Clasen 71bd5a0d 2022-12-21T16:18:46 [paint] Resolve colors We don't need to pass the index/alpha pairs to client callbacks, and can just resolve the colors internally. Update test results.
Matthias Clasen 451414a2 2022-12-17T18:14:31 [paint] Documentation fixes
Matthias Clasen 0c77f1d9 2022-12-17T14:10:28 [paint] Documentation tweaks
Matthias Clasen 0a2f3673 2022-12-17T13:51:23 [paint] Use tags for image formats This fits better with the rest of the HarfBuzz API.
Matthias Clasen 4c728e95 2022-12-17T13:33:56 [colr] Add a todo
Behdad Esfahbod 4b0285ba 2022-12-17T11:18:42 [colr] Use slant_xy
Behdad Esfahbod b9314400 2022-12-17T10:58:52 [colr] Hook up color-line variation
Behdad Esfahbod 15582d5f 2022-12-23T11:14:16 [ft-colr] Apply slant to clipbox
Matthias Clasen 9be01b6b 2022-12-21T14:04:32 [paint] Pass hb_paint_context_t along Replace the font argument with a hb_paint_context_t that carries the font, the palette index and the foreground color. The hb_font_paint_glyph() api now takes the palette index and the foreground color as extra arguments. Update all callers and regenerate test results.
Matthias Clasen a935e4b0 2022-12-17T12:59:58 [paint] Add synthetic slant to root transform
Behdad Esfahbod edf27382 2022-12-17T10:47:55 [colr] Try fixing bot build I don't get the error. Let's see. ../../src/harfbuzz/src/hb-ot-color-colr-table.hh:574:66: error: incomplete definition of type 'OT::NoVariable<OT::ColorLine<OT::NoVariable>>'
Behdad Esfahbod 6c71c530 2022-12-21T10:54:22 [paint] Rename hb_paint_context_t to hb_ot_paint_context_t
Matthias Clasen 686e627b 2022-12-17T12:44:16 [paint] Set up root transform in one place Instead of spreading this in all the tables, make hb_paint_funcs_t provide a push/pop_root_transform that does all the setup.
Behdad Esfahbod c6dd56cc 2022-12-17T10:38:23 [colr] Simplify color-stop handling
Behdad Esfahbod 6ebcc9d2 2022-12-22T21:23:45 [ft-paint] Hook up gradients
Behdad Esfahbod 84953953 2022-12-21T09:03:13 [paint] Fix slant
Matthias Clasen 485ba9be 2022-12-17T12:25:04 [paint] Spell out rectangle in the API No need to abbreviate this.
Matthias Clasen 37f3f0fc 2022-12-17T11:49:18 [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.
Matthias Clasen ea48d6c2 2022-12-17T11:51:37 Move hb_glyph_extents_t definition
Behdad Esfahbod b722039c 2022-12-17T10:22:32 [colr] Simplify
Behdad Esfahbod 583f010b 2022-12-23T12:10:22 [ft] Move lock only around clip_glyph
Matthias Clasen 7abd5dcf 2022-12-23T11:49:06 [ft-paint] Fix handling of colorstop iters
Behdad Esfahbod fe4e9bd9 2022-12-22T20:14:19 [colr] Add public vtable for hb_color_line_t
Matthias Clasen 97224f3b 2022-12-21T02:11:36 [paint] Pass font to all callbacks This will lead to easier implementations. At the same time, we change the push_clip_glyph callback to use the font as-is, no unscaling needed. Update all callers and expected test results.
Behdad Esfahbod 452cfb95 2022-12-17T10:04:55 [colr] Simplify loop using iterators Or complexify?!
Behdad Esfahbod 601a596c 2022-12-17T09:22:55 [paint] Fix include path
Matthias Clasen 32ce29f9 2022-12-21T07:42:36 [font] Move hb_font_t typedef This is needed to avoid circular header dependencies.
Behdad Esfahbod 8a9069d5 2022-12-17T09:21:08 [colr] Fix radial gradient Broke it when adding variations.
Behdad Esfahbod e799c33b 2022-12-17T09:00:20 [paint] Fix function prototype
Behdad Esfahbod 7c9e42ed 2022-12-22T19:49:06 [colr] Fix transform hell
Matthias Clasen 8364d913 2022-12-21T00:59:13 Document hb_font_set_draw_glyph_func
Behdad Esfahbod 1953d26a 2022-12-17T08:59:33 [colr] Limit recursion depth
Matthias Clasen 378bbeea 2022-12-17T10:02:30 Add more docs
Matthias Clasen a20999b9 2022-12-21T00:20:37 [font] Fix a few documentation mistakes
Matthias Clasen 6079173a 2022-12-17T01:04:35 Try paint_glyph for more tables If the COLR table does not paint the glyph, try SVG, CBDT and sbix too, before giving up on color.
Matthias Clasen 393bab4b 2022-12-23T11:02:38 [ft-paint] Apply ClipBox to all glyphs
Behdad Esfahbod 569d5b43 2022-12-22T18:00:02 [ft-paint] Remove dead code
Matthias Clasen e6c5a616 2022-12-17T02:13:38 SVG Implement paint-glyph
Matthias Clasen 23c60fd9 2022-12-17T01:04:23 sbix: Implement paint_glyph
Matthias Clasen 2333a566 2022-12-20T22:43:04 Drop the deprecation No need to drop hb_font_get_glyph_shape, just because hb_font_draw_glyph does the same. Its fine to keep both around.
Matthias Clasen 7996ae4c 2022-12-17T01:04:00 CBDT: Implement paint glyph
Matthias Clasen 82e23f32 2022-12-17T00:33:59 paint: Add a paint-image callback This will be used for image blobs like pngs and svgs. FIXME: nail down and document sizing.
Behdad Esfahbod cfdc34b4 2022-12-22T17:58:36 [ft-paint] Implement FT_COLR_PAINTFORMAT_SKEW
Matthias Clasen 56b02b65 2022-12-16T23:58:37 Update the docs Mention that the color index will always be 0xFFFF when using hb_paint API with fonts that don't have color palettes. And add an outline about which kinds of glyphs require which callbacks.
Matthias Clasen 9461ab70 2022-12-16T23:46:45 Try paint_glyph for more tables If the COLR table can't paint the glyph, try glyf, cff1 and cff2 too.
Matthias Clasen 14b026ff 2022-12-19T13:53:49 [draw] Add hb_font_draw_glyph hb_font_draw_glyph(), hb_font_draw_glyph_func_t and hb_font_funcs_set_draw_glyph_func() are just alternative names for hb_font_get_glyph_shape and friends, to better align with hb_font_paint_glyph.
Matthias Clasen 3e39dd49 2022-12-16T23:46:15 cff2: Implement paint_glyph
Matthias Clasen df89b521 2022-12-16T23:46:05 cff1: Implement paint_glyph
Behdad Esfahbod d9875ddc 2022-12-23T12:37:42 [ft-colr] Add depth counter
Behdad Esfahbod 27629039 2022-12-23T12:09:17 [ft-colr] Minor
Matthias Clasen c11ae85c 2022-12-23T09:20:45 [ft-paint] Apply root transform
Behdad Esfahbod 64cf17ec 2022-12-22T17:55:25 [ft-paint] Fix center translation
Matthias Clasen 08da1265 2022-12-19T14:36:29 [docs] Linkify links
Matthias Clasen 2edd771c 2022-12-16T23:32:15 glyf: Implement paint_glyph
Matthias Clasen 0b33b35e 2022-12-16T23:22:15 COLRv1: Return bool from paint_glyph This will let hb_ot_font_paint_glyph() try multiple tables in turn.
Matthias Clasen 9437f719 2022-12-19T14:29:39 [paint] Document hb_paint_extend_t
Matthias Clasen 0d890061 2022-12-17T00:07:30 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.
Behdad Esfahbod ddbe4e52 2022-12-22T17:54:01 [ft-paint] Implement FT_COLR_PAINTFORMAT_ROTATE
Matthias Clasen 3a2634e2 2022-12-19T13:48:08 [paint] Document hb_font_paint_glyph_func_t
Behdad Esfahbod 46286275 2022-12-16T15:27:18 [colr] More dispatch functionality
Behdad Esfahbod 81f232af 2022-12-16T15:17:35 [colr] Use dispatch machinery for paint_glyph context
Matthias Clasen 0f287e75 2022-12-19T13:45:45 [paint] Rename hb_font_get_glyph_paint_func_t The 'get' was just there due to implementation choices. Work around that and call the vfunc what it should be: hb_font_paint_glyph_func_t.
Behdad Esfahbod a96300d4 2022-12-16T15:11:35 [colr] Hide internal symbols
Matthias Clasen 7fc3fdac 2022-12-23T09:16:26 [ft-paint] Optimize away some transforms
Behdad Esfahbod 16598e02 2022-12-22T17:51:35 [ft-paint] Default
Behdad Esfahbod b4cab86d 2022-12-16T14:58:39 Fix autotools build
Behdad Esfahbod 07575190 2022-12-16T12:45:02 [colr] Add variation to rest of the paints
Matthias Clasen ddd20392 2022-12-19T12:20:07 [paint] Improve the docs
Behdad Esfahbod 5bce0053 2022-12-16T12:31:08 [colr] Flesh out variations for a few paints
Behdad Esfahbod 9d3440b7 2022-12-16T12:12:21 [colr] Add variation infrastructure to paint_glyph No paint applies variations yet.
Behdad Esfahbod a0f7f9e6 2022-12-22T17:50:35 [ft-paint] Implement FT_COLR_PAINTFORMAT_COMPOSITE
Matthias Clasen 3a219cfa 2022-12-19T11:15:37 [config] Make HB_LEAN imply HB_NO_PAINT
Matthias Clasen 5c632955 2022-12-16T12:04:17 Apply root transform This commit applies scale, slant is still missing.
Matthias Clasen 5afca91f 2022-12-16T06:43:43 Add some docs
Matthias Clasen 0ef2dc9b 2022-12-19T10:02:17 Drop a TODO This was addressed in 61bd602791d801
Matthias Clasen 44c68594 2022-12-16T00:48:28 Some docs
Matthias Clasen d7c2eacf 2022-12-15T23:42:40 Handle COLRv0 layers in paint_glyph
Behdad Esfahbod 3a1385f0 2022-12-23T12:06:18 [ft-colr] Simplify color-stop callback
Matthias Clasen 586d1758 2022-12-23T09:21:14 [ft-paint] Fix an oversight
Behdad Esfahbod 0ec20144 2022-12-22T17:40:53 [ft] Implement FT_COLR_PAINTFORMAT_COLR_GLYPH
Matthias Clasen 96cda388 2022-12-19T09:59:33 [paint] Clarify docs Spell out where the different datas originate.
Matthias Clasen 55ca6ed2 2022-12-15T23:16:54 minor fixes
Matthias Clasen 1880e547 2022-12-15T01:06:00 Assorted fixes
Matthias Clasen 684df8a8 2022-12-15T00:32:48 add some todos
Behdad Esfahbod ac2682c6 2022-12-22T17:36:54 [ft] Start of a COLRv1 renderer
Matthias Clasen a6f813b6 2022-12-15T00:05:27 Implement hb_color_line_get_extend
Matthias Clasen 3937d6b0 2022-12-14T23:58:47 Implement hb_color_line_t
Matthias Clasen 64f1b55d 2022-12-14T23:58:25 api fixes: use floats consistently
Matthias Clasen 092637f9 2022-12-23T09:14:11 [ft-paint] Fix rounding
Behdad Esfahbod e2546f5a 2022-12-22T15:50:43 [ft] Add hb-ft-colr.hh
Matthias Clasen 627c857f 2022-12-14T22:36:54 rename pop_group_and_composite
Matthias Clasen c9350838 2022-12-14T22:32:40 assorted fixes and changes
Matthias Clasen 0800d187 2022-12-19T00:59:40 Try to fix autotools build
Matthias Clasen 42324aef 2022-12-14T22:04:46 hb-paint: annotation fix
Matthias Clasen 5bd3c07b 2022-12-22T16:23:50 [colr] Don't access baseGlyphList unless v1 This was showing up sporadic crashes due to invalid reads.
Behdad Esfahbod 5ac21886 2022-12-19T10:26:54 [paint] A doc fix
Matthias Clasen 8377341b 2022-12-14T22:03:52 wip: implement paint_glyph
Matthias Clasen efe13a19 2022-12-14T09:50:52 fix introspection