Hi,
I'm currently debugging SVGFilter::implExportPages() especially around
line 1336
// In case we are dealing with a master page we need to to group all its shapes
// into a group element, this group will make up the so named "background
objects"
if( bMaster )
{
// background objects id = "bo-" + page id
OUString sBackgroundObjectsId = B2UCONST( "bo-" );
sBackgroundObjectsId += sPageId;
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "id", sBackgroundObjectsId );
if( i == nVisiblePage&& mVisiblePagePropSet.bAreBackgroundObjectsVisible )
aAttrVisibilityValue = B2UCONST( "visible" );
else
aAttrVisibilityValue = B2UCONST( "hidden" );
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "visibility",
aAttrVisibilityValue );
mpSVGExport->AddAttribute( XML_NAMESPACE_NONE, "class", B2UCONST(
"BackgroundObjects" ) );
// insert the<g> open tag related to the Background Objects
** SvXMLElementExport aExp2( *mpSVGExport, XML_NAMESPACE_NONE, "g", sal_True,
sal_True );
// append all shapes that make up the Master Slide
bRet = implExportShapes( xShapes ) || bRet;
} // append the</g> closing tag related to the Background Objects
The tag opened in the line marked with ** is never closed. (It should be
closed by the destructor.) I've tested the export with a drawing
containing a single letter 'a' and in that case there are no background
objects. So maybe testing if xShapes has no shapes could avoid exporting
an empty block? But how would I test if xShapes has any shapes?
Any hint concerning the never called destructor for aExp2 and retrieving
information from xShapes is welcome.
Christina
Context
- SVG: debugging svg export · Chr. Rossmanith
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.