[cairo] Problem with stretched images
spitzak at d2.com
Tue Sep 5 13:22:08 PDT 2006
I would agree that the proposed solution by Vlad is exactly what is
wanted. In fact I think the api for the type of pixel replication can
and should be removed.
Vlad's proposal is equivalent to doing EXTEND_PAD, plus also modifying
the mask being used by intersecting it with an antialiased rectangle the
size of the image and transformed by the same transform as the image
pixels are being transformed. I agree with him that every other 2D api
that can transform images I have seen has this behavior and that it
would be a bad idea for cairo to not match it.
The current default behavior of merging with black can be replicated by
adding a row of black pixels all around the edge to the source image, so
there is no need to support it with an api.
People are much more interested in tiling, and reflected tiling, than in
the EXTEND_PAD behavior. If EXTEND_PAD really is needed it should be
merged with whatever tiling api there is.
Carl Worth wrote:
> Meanwhile, in the above message, Vlad proposes changing the model to
> get this behavior by default in order to avoid confusion such as what
> you have hit here. And I think the principle of least surprise makes a
> good argument that direction.
More information about the cairo