diff options
Diffstat (limited to 'src/display/drawing-text.cpp')
| -rw-r--r-- | src/display/drawing-text.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/display/drawing-text.cpp b/src/display/drawing-text.cpp index f0d83abfd..21af7b200 100644 --- a/src/display/drawing-text.cpp +++ b/src/display/drawing-text.cpp @@ -269,7 +269,7 @@ void DrawingText::decorateStyle(DrawingContext &dc, double vextent, double xphas int dashes[16]={ 8, 7, 6, 5, 4, 3, 2, 1, - -8, -7, -6, -5 + -8, -7, -6, -5, -4, -3, -2, -1 }; int dots[16]={ @@ -592,17 +592,24 @@ unsigned DrawingText::_renderItem(DrawingContext &dc, Geom::IntRect const &/*are { Inkscape::DrawingContext::Save save(dc); dc.transform(_ctm); - if (has_fill && fill_first) { _nrstyle.applyFill(dc); dc.fillPreserve(); } - + } + { + Inkscape::DrawingContext::Save save(dc); + if (!_style || !(_style->vector_effect.computed == SP_VECTOR_EFFECT_NON_SCALING_STROKE)) { + dc.transform(_ctm); + } if (has_stroke) { _nrstyle.applyStroke(dc); dc.strokePreserve(); } - + } + { + Inkscape::DrawingContext::Save save(dc); + dc.transform(_ctm); if (has_fill && !fill_first) { _nrstyle.applyFill(dc); dc.fillPreserve(); |
