summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--svgio/source/svgreader/svgstyleattributes.cxx15
1 files changed, 6 insertions, 9 deletions
diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx
index fb750fe9933b..56a1ac5235eb 100644
--- a/svgio/source/svgreader/svgstyleattributes.cxx
+++ b/svgio/source/svgreader/svgstyleattributes.cxx
@@ -263,9 +263,6 @@ namespace svgio
// dismantle to geometry and add needed primitives
const basegfx::BColor* pFill = getFill();
const SvgGradientNode* pFillGradient = getSvgGradientNodeFill();
- const SvgStyleAttributes* pSvgStyleAttributes = getParentStyle();
- const SvgGradientNode* pParentFillGradient =
- pSvgStyleAttributes ? pSvgStyleAttributes->getSvgGradientNodeFill() : nullptr;
const SvgPatternNode* pFillPattern = getSvgPatternNodeFill();
const basegfx::BColor* pStroke = getStroke();
const SvgGradientNode* pStrokeGradient = getSvgGradientNodeStroke();
@@ -306,20 +303,20 @@ namespace svgio
const bool bStrokeUsed(pStroke || pStrokeGradient || pStrokePattern);
- if(pFill && (!pFillGradient || pParentFillGradient))
- {
- // add the already prepared primitives for single color fill
- rTarget.append(rSource);
- }
// add fill. Use geometry even for simple color fill when stroke
// is used, else text rendering and the geometry-based stroke will
// normally not really match optically due to diverse system text
// renderers
- else if(aMergedArea.count() && (pFillGradient || pFillPattern || bStrokeUsed))
+ if(aMergedArea.count() && (pFillGradient || pFillPattern || bStrokeUsed))
{
// create text fill content based on geometry
add_fill(aMergedArea, rTarget, aMergedArea.getB2DRange());
}
+ else if(pFill)
+ {
+ // add the already prepared primitives for single color fill
+ rTarget.append(rSource);
+ }
// add stroke
if(aMergedArea.count() && bStrokeUsed)