summaryrefslogtreecommitdiff
path: root/svgio/source/svgreader/svgusenode.cxx
diff options
context:
space:
mode:
Diffstat (limited to 'svgio/source/svgreader/svgusenode.cxx')
-rw-r--r--svgio/source/svgreader/svgusenode.cxx18
1 files changed, 8 insertions, 10 deletions
diff --git a/svgio/source/svgreader/svgusenode.cxx b/svgio/source/svgreader/svgusenode.cxx
index 66f9d1a551a0..185dc4f919a0 100644
--- a/svgio/source/svgreader/svgusenode.cxx
+++ b/svgio/source/svgreader/svgusenode.cxx
@@ -163,18 +163,16 @@ namespace svgio::svgreader
aTransform = *getTransform() * aTransform;
}
- if(!aTransform.isIdentity())
- {
- const drawinglayer::primitive2d::Primitive2DReference xRef(
- new drawinglayer::primitive2d::TransformPrimitive2D(
- aTransform,
- std::move(aNewTarget)));
+ const SvgStyleAttributes* pStyle = getSvgStyleAttributes();
- rTarget.push_back(xRef);
- }
- else
+ if(pStyle)
{
- rTarget.append(aNewTarget);
+ const double fOpacity(pStyle->getOpacity().getNumber());
+
+ if(fOpacity > 0.0 && Display::None != getDisplay())
+ {
+ pStyle->add_postProcess(rTarget, std::move(aNewTarget), aTransform, false);
+ }
}
}