diff options
author | Rüdiger Timm <rt@openoffice.org> | 2008-07-11 06:11:51 +0000 |
---|---|---|
committer | Rüdiger Timm <rt@openoffice.org> | 2008-07-11 06:11:51 +0000 |
commit | 71d8cf71460b07fea70aff5d433f418d743128ee (patch) | |
tree | 16f7d71664e85144a2dd00c291be328e23869e9b /cppcanvas | |
parent | bcf7da6f4665d89a0ea471970f7a75d2ee7c7bcf (diff) |
INTEGRATION: CWS thb30fixes (1.20.6); FILE MERGED
2008/06/25 10:18:25 thb 1.20.6.3: #i74202# Shrinked outline stroke width a bit; moved rendering of underline geometry in front of glyph outlines
2008/06/23 12:30:07 thb 1.20.6.2: #i10000# Fixed build breakage
2008/06/20 15:43:49 thb 1.20.6.1: #i74202# Fixed underline rendering for outline text
Diffstat (limited to 'cppcanvas')
-rw-r--r-- | cppcanvas/source/mtfrenderer/textaction.cxx | 44 |
1 files changed, 27 insertions, 17 deletions
diff --git a/cppcanvas/source/mtfrenderer/textaction.cxx b/cppcanvas/source/mtfrenderer/textaction.cxx index 7de8a72ee8c2..c868561c12d8 100644 --- a/cppcanvas/source/mtfrenderer/textaction.cxx +++ b/cppcanvas/source/mtfrenderer/textaction.cxx @@ -7,7 +7,7 @@ * OpenOffice.org - a multi-platform office productivity suite * * $RCSfile: textaction.cxx,v $ - * $Revision: 1.21 $ + * $Revision: 1.22 $ * * This file is part of OpenOffice.org. * @@ -1641,7 +1641,7 @@ namespace cppcanvas VirtualDevice& rVDev ) { const ::basegfx::B2DSize aFontSize( 0, - rVDev.GetFont().GetHeight() / 32.0 ); + rVDev.GetFont().GetHeight() / 64.0 ); const double nOutlineWidth( (rState.mapModeTransform * aFontSize).getY() ); @@ -1755,21 +1755,26 @@ namespace cppcanvas // TODO(P1): implement caching - // underlines/strikethrough - rCanvas->fillPolyPolygon( mxTextLines, - rViewState, - rRenderState ); - // background of text - mpCanvas->getUNOCanvas()->fillPolyPolygon( mxTextPoly, - rViewState, - aLocalState ); + rCanvas->fillPolyPolygon( mxTextPoly, + rViewState, + aLocalState ); // border line of text - mpCanvas->getUNOCanvas()->strokePolyPolygon( mxTextPoly, - rViewState, - rRenderState, - aStrokeAttributes ); + rCanvas->strokePolyPolygon( mxTextPoly, + rViewState, + rRenderState, + aStrokeAttributes ); + + // underlines/strikethrough - background + rCanvas->fillPolyPolygon( mxTextLines, + rViewState, + aLocalState ); + // underlines/strikethrough - border + rCanvas->strokePolyPolygon( mxTextLines, + rViewState, + rRenderState, + aStrokeAttributes ); return true; } @@ -1839,10 +1844,15 @@ namespace cppcanvas rRenderState, aStrokeAttributes ); - // underlines/strikethrough - mrCanvas->drawPolyPolygon( mrLinePolygon, + // underlines/strikethrough - background + mrCanvas->fillPolyPolygon( mrLinePolygon, mrViewState, - rRenderState ); + aLocalState ); + // underlines/strikethrough - border + mrCanvas->strokePolyPolygon( mrLinePolygon, + mrViewState, + rRenderState, + aStrokeAttributes ); return true; } |