diff options
Diffstat (limited to 'svgio/source')
-rw-r--r-- | svgio/source/svgreader/svgclippathnode.cxx | 9 | ||||
-rw-r--r-- | svgio/source/svgreader/svgimagenode.cxx | 4 | ||||
-rw-r--r-- | svgio/source/svgreader/svgmasknode.cxx | 6 | ||||
-rw-r--r-- | svgio/source/svgreader/svgstyleattributes.cxx | 6 | ||||
-rw-r--r-- | svgio/source/svgreader/svgsvgnode.cxx | 25 |
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)) { |