Skip to content

snapToPixel does not work if parent coordinates are not snapped. #750

Open
@gskinner

Description

@gskinner

If I have bitmap A with snapToPixel set to true inside container B with snapToPixel set to false, and B is not on a whole pixel, then A will be drawn off-pixel.

This is result of needing to use save/restore for support of masks and similar features. We can't query the canvas for our current offset. We could support this by requesting the concatenated matrix for snapped objects, and using that value to affect an offset, but that would be very expensive.

Alternately, we could pass the offset values forward through the draw chain, but this would require adding parameters to draw specifically for this, which isn't ideal, and doesn't work well with other transformations.

Perhaps there is a way we could move to a hybrid model. Using setTransform and a iteratively concatenated matrix in general, and save/restore for masks (and similar features) only.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions