diff options
author | Caolán McNamara <caolanm@redhat.com> | 2020-09-28 09:04:37 +0100 |
---|---|---|
committer | Michael Weghorn <m.weghorn@posteo.de> | 2020-09-28 17:02:49 +0200 |
commit | 4b7313b615e1383f82ada0039a2b4750bff2cf26 (patch) | |
tree | 314d5b4e6b2e10fd147e20d07cc9cfda390d1546 /cppcanvas/source | |
parent | 6d9652e2864a020b61f26a7b51ca908f1d9790a8 (diff) |
Resolves: tdf#137071 draw canvas under/over lines after background
Change-Id: I066529af010ca4e34b370e462b3e9de1173e6096
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103435
Tested-by: Jenkins
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'cppcanvas/source')
-rw-r--r-- | cppcanvas/source/mtfrenderer/textaction.cxx | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/cppcanvas/source/mtfrenderer/textaction.cxx b/cppcanvas/source/mtfrenderer/textaction.cxx index 277dc4e0d692..42621e819455 100644 --- a/cppcanvas/source/mtfrenderer/textaction.cxx +++ b/cppcanvas/source/mtfrenderer/textaction.cxx @@ -904,10 +904,6 @@ namespace cppcanvas::internal const rendering::ViewState& rViewState( mpCanvas->getViewState() ); const uno::Reference< rendering::XCanvas >& rCanvas( mpCanvas->getUNOCanvas() ); - rCanvas->fillPolyPolygon( mxTextLines, - rViewState, - rRenderState ); - //rhbz#1589029 non-transparent text fill background support if (rTextFillColor != COL_AUTO) { @@ -919,6 +915,11 @@ namespace cppcanvas::internal rCanvas->fillPolyPolygon(xTextBounds, rViewState, aLocalState); } + // under/over lines + rCanvas->fillPolyPolygon( mxTextLines, + rViewState, + rRenderState ); + rCanvas->drawText( maStringContext, mxFont, rViewState, rRenderState, @@ -1367,8 +1368,6 @@ namespace cppcanvas::internal const rendering::ViewState& rViewState( mpCanvas->getViewState() ); const uno::Reference< rendering::XCanvas >& rCanvas( mpCanvas->getUNOCanvas() ); - maTextLinesHelper.render(rRenderState, bNormalText); - //rhbz#1589029 non-transparent text fill background support if (rTextFillColor != COL_AUTO) { @@ -1380,6 +1379,9 @@ namespace cppcanvas::internal rCanvas->fillPolyPolygon(xTextBounds, rViewState, aLocalState); } + // under/over lines + maTextLinesHelper.render(rRenderState, bNormalText); + rCanvas->drawTextLayout( mxTextLayout, rViewState, rRenderState ); |