• Matthias Clasen's avatar
    More work on text nodes · b0e8d848
    Matthias Clasen authored
    This commit takes several steps towards rendering text
    like we want to.
    The creation of the cairo surface and texture is moved
    to the backend (in GskVulkanRenderer). We add a mask
    shader that is used in the next text pipeline to use
    the texture as a mask, like cairo_mask_surface does.
    There is a separate color text pipeline that uses the
    already existing blend shaders to use the texture as
    a source, like cairo_paint does.
    The text node api is simplified to have just a single
    offset, which determines the left end of the text baseline,
    like all our other text drawing APIs.