summaryrefslogtreecommitdiff
path: root/svgio/source
diff options
context:
space:
mode:
Diffstat (limited to 'svgio/source')
-rw-r--r--svgio/source/svgreader/svgclippathnode.cxx9
-rw-r--r--svgio/source/svgreader/svgimagenode.cxx4
-rw-r--r--svgio/source/svgreader/svgmasknode.cxx6
-rw-r--r--svgio/source/svgreader/svgstyleattributes.cxx6
-rw-r--r--svgio/source/svgreader/svgsvgnode.cxx25
5 files changed, 27 insertions, 23 deletions
diff --git a/svgio/source/svgreader/svgclippathnode.cxx b/svgio/source/svgreader/svgclippathnode.cxx
index 1a8269684095..6688791ad207 100644
--- a/svgio/source/svgreader/svgclippathnode.cxx
+++ b/svgio/source/svgreader/svgclippathnode.cxx
@@ -129,6 +129,7 @@ namespace svgio::svgreader
return;
const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
drawinglayer::primitive2d::Primitive2DContainer aClipTarget;
basegfx::B2DPolyPolygon aClipPolyPolygon;
@@ -138,7 +139,7 @@ namespace svgio::svgreader
if(!aClipTarget.empty())
{
// extract filled polygons as base for a mask PolyPolygon
- drawinglayer::processor2d::ContourExtractor2D aExtractor(aViewInformation2D, true);
+ drawinglayer::processor2d::ContourExtractor2D aExtractor(aVisitingParameters, true);
aExtractor.process(aClipTarget);
@@ -161,7 +162,7 @@ namespace svgio::svgreader
if (SvgUnits::objectBoundingBox == getClipPathUnits())
{
// clip is object-relative, transform using content transformation
- const basegfx::B2DRange aContentRange(rContent.getB2DRange(aViewInformation2D));
+ const basegfx::B2DRange aContentRange(rContent.getB2DRange(aVisitingParameters));
aClipPolyPolygon.transform(
basegfx::utils::createScaleTranslateB2DHomMatrix(
@@ -187,9 +188,7 @@ namespace svgio::svgreader
// ClipRegion is a rectangle, thus it is not expensive to tell
// if the content is completely inside or outside of it; get ranges
const basegfx::B2DRange aClipRange(aClipPolyPolygon.getB2DRange());
- const basegfx::B2DRange aContentRange(
- rContent.getB2DRange(
- aViewInformation2D));
+ const basegfx::B2DRange aContentRange(rContent.getB2DRange(aVisitingParameters));
if(aClipRange.isInside(aContentRange))
{
diff --git a/svgio/source/svgreader/svgimagenode.cxx b/svgio/source/svgreader/svgimagenode.cxx
index feaf5933ad53..05b07b739be1 100644
--- a/svgio/source/svgreader/svgimagenode.cxx
+++ b/svgio/source/svgreader/svgimagenode.cxx
@@ -265,7 +265,9 @@ namespace svgio::svgreader
if(!aNewTarget.empty())
{
- aViewBox = aNewTarget.getB2DRange(drawinglayer::geometry::ViewInformation2D());
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ aViewBox = aNewTarget.getB2DRange(aVisitingParameters);
}
}
}
diff --git a/svgio/source/svgreader/svgmasknode.cxx b/svgio/source/svgreader/svgmasknode.cxx
index 7f3ab9a772ca..c2f2c5e0c7fc 100644
--- a/svgio/source/svgreader/svgmasknode.cxx
+++ b/svgio/source/svgreader/svgmasknode.cxx
@@ -201,9 +201,9 @@ namespace svgio::svgreader
if(!aMaskTarget.empty())
{
// get range of content to be masked
- const basegfx::B2DRange aContentRange(
- rTarget.getB2DRange(
- drawinglayer::geometry::ViewInformation2D()));
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ const basegfx::B2DRange aContentRange = rTarget.getB2DRange(aVisitingParameters);
const double fContentWidth(aContentRange.getWidth());
const double fContentHeight(aContentRange.getHeight());
diff --git a/svgio/source/svgreader/svgstyleattributes.cxx b/svgio/source/svgreader/svgstyleattributes.cxx
index 8ad08b0414e2..7092f7aa8b0e 100644
--- a/svgio/source/svgreader/svgstyleattributes.cxx
+++ b/svgio/source/svgreader/svgstyleattributes.cxx
@@ -280,7 +280,8 @@ namespace svgio::svgreader
// text geometry is needed, create
// use neutral ViewInformation and create LineGeometryExtractor2D
const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
- drawinglayer::processor2d::TextAsPolygonExtractor2D aExtractor(aViewInformation2D);
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ drawinglayer::processor2d::TextAsPolygonExtractor2D aExtractor(aVisitingParameters);
// process
aExtractor.process(rSource);
@@ -750,7 +751,8 @@ namespace svgio::svgreader
// use neutral ViewInformation and create LineGeometryExtractor2D
const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
- drawinglayer::processor2d::LineGeometryExtractor2D aExtractor(aViewInformation2D);
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ drawinglayer::processor2d::LineGeometryExtractor2D aExtractor(aVisitingParameters);
// process
aExtractor.process(aSeq);
diff --git a/svgio/source/svgreader/svgsvgnode.cxx b/svgio/source/svgreader/svgsvgnode.cxx
index 082b8f89a715..27bba449da52 100644
--- a/svgio/source/svgreader/svgsvgnode.cxx
+++ b/svgio/source/svgreader/svgsvgnode.cxx
@@ -357,9 +357,9 @@ namespace svgio::svgreader
// Even outermost svg has not all information to resolve relative values,
// I use content itself as fallback to set missing values for viewport
// Any better idea for such ill structured svg documents?
- const basegfx::B2DRange aChildRange(
- aSequence.getB2DRange(
- drawinglayer::geometry::ViewInformation2D()));
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ const basegfx::B2DRange aChildRange = aSequence.getB2DRange(aVisitingParameters);
fWReference = aChildRange.getWidth();
}
}
@@ -391,9 +391,9 @@ namespace svgio::svgreader
// Even outermost svg has not all information to resolve relative values,
// I use content itself as fallback to set missing values for viewport
// Any better idea for such ill structured svg documents?
- const basegfx::B2DRange aChildRange(
- aSequence.getB2DRange(
- drawinglayer::geometry::ViewInformation2D()));
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ const basegfx::B2DRange aChildRange = aSequence.getB2DRange(aVisitingParameters);
fHReference = aChildRange.getHeight();
}
}
@@ -593,9 +593,10 @@ namespace svgio::svgreader
{
// There exists no parent to resolve relative width or height.
// Use child size as fallback. We get viewport >= content, therefore no clipping.
- const basegfx::B2DRange aChildRange(
- aSequence.getB2DRange(
- drawinglayer::geometry::ViewInformation2D()));
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ const basegfx::B2DRange aChildRange = aSequence.getB2DRange(aVisitingParameters);
+
const double fChildWidth(aChildRange.getWidth());
const double fChildHeight(aChildRange.getHeight());
const double fChildLeft(aChildRange.getMinX());
@@ -617,9 +618,9 @@ namespace svgio::svgreader
// different from Svg we have the possibility with primitives to get
// a correct bounding box for the geometry. Get it for evtl. taking action
- const basegfx::B2DRange aContentRange(
- aSequence.getB2DRange(
- drawinglayer::geometry::ViewInformation2D()));
+ const drawinglayer::geometry::ViewInformation2D aViewInformation2D;
+ const drawinglayer::primitive2d::VisitingParameters aVisitingParameters(aViewInformation2D);
+ const basegfx::B2DRange aContentRange = aSequence.getB2DRange(aVisitingParameters);
if(aSvgCanvasRange.isInside(aContentRange))
{