src


Log

Author Commit Date CI Message
Behdad Esfahbod 47c896f0 2022-12-23T16:20:44 [paint-extents] Hook it up, kinda
Behdad Esfahbod 7fbaaebe 2022-12-23T15:37:16 [paint-extents] Finish off Untested and unused.
Behdad Esfahbod 8ca78d15 2022-12-23T15:21:48 [paint-extend] More
Behdad Esfahbod 23a2d4db 2022-12-23T15:10:26 [paint-extents] More
Behdad Esfahbod d7435b10 2022-12-23T15:05:30 [paint-extents] Flesh out more
Behdad Esfahbod c37a1ead 2022-12-23T14:57:12 [paint-extents] Flesh out some more
Behdad Esfahbod 268d8b7d 2022-12-23T14:45:56 [paint-extents] Start out
Behdad Esfahbod 583f010b 2022-12-23T12:10:22 [ft] Move lock only around clip_glyph
Matthias Clasen 0d5256e5 2022-12-23T02:41:08 [ft-paint] Fix some fixed->float conversions
Behdad Esfahbod 91c88050 2022-12-22T10:42:27 [ft] Use new name for draw API
Matthias Clasen f1f8d1e8 2022-12-18T02:43:25 Small documentation addition
Behdad Esfahbod c27eefec 2022-12-22T10:41:13 Revert "Drop the deprecation" This reverts commit 3904e66777339a3d420ece1c2b7d550949aa3946.
Matthias Clasen 021618e9 2022-12-18T00:12:32 [colr] Add hb_ot_color_has_paint This is a counterpart to hb_ot_color_has_layers for COLRv1 data.
Matthias Clasen 63fcb26c 2022-12-17T22:41:34 Add some more docs
Matthias Clasen 07ba5be3 2022-12-23T01:10:35 [paint] Documentation tweaks
Behdad Esfahbod f3985d94 2022-12-22T10:11:28 [paint] Fix drawing non-color glyphs
Behdad Esfahbod 237955df 2022-12-22T08:12:47 [paint] Add slant to image() callback And slant images in hb-view.
Matthias Clasen 451414a2 2022-12-17T18:14:31 [paint] Documentation fixes
Behdad Esfahbod 27629039 2022-12-23T12:09:17 [ft-colr] Minor
Matthias Clasen c2219339 2022-12-21T18:39:27 [paint] Preserve foreground information
Matthias Clasen f146299a 2022-12-21T17:24:02 [paint] Drop unnecessary api
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 21f78c87 2022-12-23T00:30:40 [paint] Document that colors are unpremultiplied And mention that gradient interpolation must happen in premultiplied space.
Matthias Clasen 6387004c 2022-12-21T16:43:19 [paint] Simplify api Drop the hb_paint_context_t struct from the API, and only pass the font where we need it.
Matthias Clasen 4c728e95 2022-12-17T13:33:56 [colr] Add a todo
Behdad Esfahbod 4b0285ba 2022-12-17T11:18:42 [colr] Use slant_xy
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.
Behdad Esfahbod b9314400 2022-12-17T10:58:52 [colr] Hook up color-line variation
Matthias Clasen a935e4b0 2022-12-17T12:59:58 [paint] Add synthetic slant to root transform
Behdad Esfahbod 3a1385f0 2022-12-23T12:06:18 [ft-colr] Simplify color-stop callback
Matthias Clasen b6e98cf7 2022-12-23T00:18:40 [colr] Add more docs State explicitly that palette entries are unpremultipled, and link to the spec.
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>>'
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
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
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.
Behdad Esfahbod b722039c 2022-12-17T10:22:32 [colr] Simplify
Behdad Esfahbod 452cfb95 2022-12-17T10:04:55 [colr] Simplify loop using iterators Or complexify?!
Behdad Esfahbod 1cc3b100 2022-12-23T11:55:55 [ft-colr] Ifdef build for older freetype
Matthias Clasen a634f6b4 2022-12-23T00:18:40 [colr] Add more docs State explicitly that palette entries are unpremultipled, and link to the spec.
Behdad Esfahbod 6c71c530 2022-12-21T10:54:22 [paint] Rename hb_paint_context_t to hb_ot_paint_context_t
Behdad Esfahbod 601a596c 2022-12-17T09:22:55 [paint] Fix include path
Behdad Esfahbod 8a9069d5 2022-12-17T09:21:08 [colr] Fix radial gradient Broke it when adding variations.
Behdad Esfahbod 84953953 2022-12-21T09:03:13 [paint] Fix slant
Behdad Esfahbod e799c33b 2022-12-17T09:00:20 [paint] Fix function prototype
Behdad Esfahbod 1953d26a 2022-12-17T08:59:33 [colr] Limit recursion depth
Behdad Esfahbod a02c2a91 2022-12-22T22:05:09 [ft-paint] Apply alpha correctly
Matthias Clasen 378bbeea 2022-12-17T10:02:30 Add more docs
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.
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 e6c5a616 2022-12-17T02:13:38 SVG Implement paint-glyph
Behdad Esfahbod 882c2bca 2022-12-23T11:48:41 [ft-colr] Add a paint context
Matthias Clasen 32ce29f9 2022-12-21T07:42:36 [font] Move hb_font_t typedef This is needed to avoid circular header dependencies.
Matthias Clasen 23c60fd9 2022-12-17T01:04:23 sbix: Implement paint_glyph
Matthias Clasen 7996ae4c 2022-12-17T01:04:00 CBDT: Implement paint glyph
Matthias Clasen 8364d913 2022-12-21T00:59:13 Document hb_font_set_draw_glyph_func
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.
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 a20999b9 2022-12-21T00:20:37 [font] Fix a few documentation mistakes
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 3e39dd49 2022-12-16T23:46:15 cff2: Implement paint_glyph
Matthias Clasen df89b521 2022-12-16T23:46:05 cff1: Implement paint_glyph
Matthias Clasen 2edd771c 2022-12-16T23:32:15 glyf: Implement paint_glyph
Behdad Esfahbod 7a4b4c64 2022-12-23T11:36:04 [ft-colr] Minor macro
Behdad Esfahbod 6ebcc9d2 2022-12-22T21:23:45 [ft-paint] Hook up gradients
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 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 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 46286275 2022-12-16T15:27:18 [colr] More dispatch functionality
Behdad Esfahbod fe4e9bd9 2022-12-22T20:14:19 [colr] Add public vtable for hb_color_line_t
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.
Behdad Esfahbod 81f232af 2022-12-16T15:17:35 [colr] Use dispatch machinery for paint_glyph context
Behdad Esfahbod a96300d4 2022-12-16T15:11:35 [colr] Hide internal symbols
Matthias Clasen 08da1265 2022-12-19T14:36:29 [docs] Linkify links
Behdad Esfahbod b4cab86d 2022-12-16T14:58:39 Fix autotools build
Behdad Esfahbod c453c2fc 2022-12-23T11:33:23 [ft-colr] Fix color-stop iteration
Behdad Esfahbod 7c9e42ed 2022-12-22T19:49:06 [colr] Fix transform hell
Matthias Clasen 9437f719 2022-12-19T14:29:39 [paint] Document hb_paint_extend_t
Behdad Esfahbod 07575190 2022-12-16T12:45:02 [colr] Add variation to rest of the paints
Behdad Esfahbod 5bce0053 2022-12-16T12:31:08 [colr] Flesh out variations for a few paints
Matthias Clasen 3a2634e2 2022-12-19T13:48:08 [paint] Document hb_font_paint_glyph_func_t
Behdad Esfahbod 9d3440b7 2022-12-16T12:12:21 [colr] Add variation infrastructure to paint_glyph No paint applies variations yet.
Matthias Clasen 5c632955 2022-12-16T12:04:17 Apply root transform This commit applies scale, slant is still missing.
Behdad Esfahbod 569d5b43 2022-12-22T18:00:02 [ft-paint] Remove dead code
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.
Matthias Clasen 5afca91f 2022-12-16T06:43:43 Add some docs
Matthias Clasen 44c68594 2022-12-16T00:48:28 Some docs
Matthias Clasen d7c2eacf 2022-12-15T23:42:40 Handle COLRv0 layers in paint_glyph
Matthias Clasen 55ca6ed2 2022-12-15T23:16:54 minor fixes
Matthias Clasen bbb89e62 2022-12-23T13:30:26 [paint] Document color lines as transient Just so people don't get ideas.
Behdad Esfahbod cfdc34b4 2022-12-22T17:58:36 [ft-paint] Implement FT_COLR_PAINTFORMAT_SKEW
Matthias Clasen ddd20392 2022-12-19T12:20:07 [paint] Improve the docs
Matthias Clasen 1880e547 2022-12-15T01:06:00 Assorted fixes
Matthias Clasen 3a219cfa 2022-12-19T11:15:37 [config] Make HB_LEAN imply HB_NO_PAINT
Matthias Clasen 684df8a8 2022-12-15T00:32:48 add some todos
Matthias Clasen a6f813b6 2022-12-15T00:05:27 Implement hb_color_line_get_extend
Behdad Esfahbod 64cf17ec 2022-12-22T17:55:25 [ft-paint] Fix center translation