diff options
author | Tor Lillqvist <tml@collabora.com> | 2017-01-26 08:41:59 +0200 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2017-02-09 09:53:54 +0000 |
commit | 562ea5ef1bf2dd8b110109c6d531489780b51c30 (patch) | |
tree | b8d53c5f9ab46dd1a95750c79379c6dcd8a2fad2 | |
parent | 3687612a93813449cfc68ce5ece3b785560b2e58 (diff) |
tdf#105620: Fix placement of image embedded in graphic
Change-Id: I3d399fe4aab9260817f171d4e69388a19eb85d21
Reviewed-on: https://gerrit.libreoffice.org/33789
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
-rw-r--r-- | canvas/source/cairo/cairo_canvashelper.cxx | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/canvas/source/cairo/cairo_canvashelper.cxx b/canvas/source/cairo/cairo_canvashelper.cxx index 7f7bc11c0560..a0bf97d25c3e 100644 --- a/canvas/source/cairo/cairo_canvashelper.cxx +++ b/canvas/source/cairo/cairo_canvashelper.cxx @@ -795,6 +795,12 @@ namespace cairocanvas aScaledTextureMatrix.x0 = basegfx::fround( aScaledTextureMatrix.x0 ); aScaledTextureMatrix.y0 = basegfx::fround( aScaledTextureMatrix.y0 ); + + double x1, y1, x2, y2; + cairo_path_extents(pCairo, &x1, &y1, &x2, &y2); + aScaledTextureMatrix.x0 -= (x1 * aScaledTextureMatrix.xx); + aScaledTextureMatrix.y0 -= (y1 * aScaledTextureMatrix.yy); + cairo_pattern_set_matrix( pPattern, &aScaledTextureMatrix ); cairo_set_source( pCairo, pPattern ); |