[cairo] Color fonts
matthias.clasen at gmail.com
Tue Jul 18 20:59:07 UTC 2017
On Sat, Jul 15, 2017 at 4:05 AM, Uli Schlachter <psychon at znc.in> wrote:
> On 07.07.2017 15:23, Matthias Clasen wrote:
> > On Sat, Jul 1, 2017 at 2:25 AM, Uli Schlachter <psychon at znc.in> wrote:
> >> On 30.06.2017 17:29, Behdad Esfahbod wrote:
> >>> On Jun 30, 2017 7:51 PM, "Matthias Clasen" <mclasen at redhat.com> wrote:
> >>> On Fri, 2017-06-30 at 17:02 +0200, Uli Schlachter wrote:
> >>>> On 28.06.2017 14:23, Behdad Esfahbod wrote:
> >>>>> All of you have asked me about the status of color fonts in
> >>>>> cairo. There's
> >>>>> some discussion here:
> >>>> what was the solution to make this fit into cairo's drawing model?
> >>>> Text
> >>>> / glyphs are used as a mask and a mask does not have colors.
> >>> There is no solution to that. The assumption in cairo's drawing model
> >>> about glyphs/fonts has simply been invalidated by reality.
> >>> Correct.
> >> Okay... so what is the new model? What happens when I draw a color glyph
> >> with operator XOR and a red source?
> > The red source is ignored for color glyphs because they are used as the
> > source.
> Hi again,
> I just came up with another question: How are overlapping glyphs handled?
> Let's say I have a red glyph and a blue glyph and I draw them in such a
> way that they overlap. Let's say this additionally overlaps with a
> non-colored glyph in the same position and I use a green source with 50%
> alpha (cairo_set_source_rgba(cr, 0, 1, 0, 0.5)).
> What's the visible result?
Here is what my implementation does: It renders the color glyphs, in order,
followed by the non-color glyphs.
In practice, I don't think the case of mixed color and non-color glyphs in
the same call will be all that common.
Most apps will explicitly set a color font just for the emoji and they
won't render regular text with an emoji font,
with the result that runs of color glyphs and non-color glyphs will
typically be in separate calls.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the cairo