You are viewing a plain text version of this content. The canonical link for it is here.
Posted to fop-dev@xmlgraphics.apache.org by bu...@apache.org on 2003/08/14 10:33:19 UTC
DO NOT REPLY [Bug 22408] New: -
Nullpointer Exception when using units in svg:use
DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22408>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND
INSERTED IN THE BUG DATABASE.
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=22408
Nullpointer Exception when using units in svg:use
Summary: Nullpointer Exception when using units in svg:use
Product: Fop
Version: 0.20.5
Platform: PC
OS/Version: Windows NT/2K
Status: NEW
Severity: Normal
Priority: Other
Component: svg
AssignedTo: fop-dev@xml.apache.org
ReportedBy: gvrossum@springsite.com
Hello,
I'm trying to render the follwing code using FOP 0.20.5 (Platform is Win2k,
j2sdk1.4.0).
<fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master master-name="title-page" page-
width="21cm" page-height="29.7cm" margin-top="6cm" margin-bottom="2px" margin-
left="2cm" margin-right="2cm">
<fo:region-body margin-top="0px"></fo:region-body>
</fo:simple-page-master>
<fo:page-sequence-master master-name="title">
<fo:single-page-master-reference master-
reference="title-page"></fo:single-page-master-reference>
</fo:page-sequence-master>
</fo:layout-master-set>
<fo:page-sequence master-reference="title">
<fo:flow flow-name="xsl-region-body">
<fo:block>
<fo:instream-foreign-object>
<svg:svg viewBox="0 0 100 100"
width="100" height="50" xmlns:svg="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink">
<svg:defs>
<svg:polygon id="Star" points="-
4,-1 -1,-1 0,-4 1,-1 4,-1 2,1 3,4 0,2 -3,4 -2,1"/>
</svg:defs>
<svg:rect width="100" height="100"
x="0" y="0" fill="yellow"/>
<svg:use x="50%" y="50%"
xlink:href="#Star" style="fill:limegreen;stroke:black;stroke-width:0.7px;"/>
</svg:svg>
</fo:instream-foreign-object>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
when executing FOP with:
fop svgUse.fo test.pdf
I get the following NullpointerException:
[INFO] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser
[INFO] FOP 0.20.5
[INFO] Using org.apache.xerces.parsers.SAXParser as SAX2 Parser
[INFO] building formatting object tree
[INFO] setting up fonts
[INFO] [1]
[ERROR] svg graphic could not be built: null
java.lang.NullPointerException
at org.apache.batik.bridge.UnitProcessor$DefaultContext.getViewportWidth
(UnitProcessor.java:382)
at org.apache.batik.util.UnitProcessor.percentagesToPixels
(UnitProcessor.java:223)
at org.apache.batik.util.UnitProcessor.svgToUserSpace
(UnitProcessor.java:166)
at org.apache.batik.util.UnitProcessor.svgToUserSpace
(UnitProcessor.java:131)
at org.apache.batik.bridge.UnitProcessor.svgToUserSpace
(UnitProcessor.java:313)
at
org.apache.batik.bridge.UnitProcessor.svgHorizontalCoordinateToUserSpace
(UnitProcessor.java:247)
at org.apache.batik.bridge.SVGUseElementBridge.computeTransform
(SVGUseElementBridge.java:178)
at org.apache.batik.bridge.SVGUseElementBridge.createGraphicsNode
(SVGUseElementBridge.java:152)
at org.apache.batik.bridge.GVTBuilder.buildGraphicsNode
(GVTBuilder.java:182)
at org.apache.batik.bridge.GVTBuilder.buildComposite
(GVTBuilder.java:148)
at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:76)
at org.apache.fop.render.pdf.PDFRenderer.renderSVGDocument
(PDFRenderer.java:590)
at org.apache.fop.render.pdf.PDFRenderer.renderSVGArea
(PDFRenderer.java:549)
at org.apache.fop.svg.SVGArea.render(SVGArea.java:98)
at org.apache.fop.render.pdf.PDFRenderer.renderForeignObjectArea
(PDFRenderer.java:533)
at org.apache.fop.layout.inline.ForeignObjectArea.render
(ForeignObjectArea.java:89)
at org.apache.fop.render.AbstractRenderer.renderLineArea
(AbstractRenderer.java:516)
at org.apache.fop.layout.LineArea.render(LineArea.java:519)
at org.apache.fop.render.AbstractRenderer.renderBlockArea
(AbstractRenderer.java:485)
at org.apache.fop.layout.BlockArea.render(BlockArea.java:117)
at org.apache.fop.render.AbstractRenderer.renderAreaContainer
(AbstractRenderer.java:451)
at org.apache.fop.layout.ColumnArea.render(ColumnArea.java:71)
at org.apache.fop.render.AbstractRenderer.renderSpanArea
(AbstractRenderer.java:100)
at org.apache.fop.layout.SpanArea.render(SpanArea.java:94)
at org.apache.fop.render.AbstractRenderer.renderBodyAreaContainer
(AbstractRenderer.java:368)
at org.apache.fop.layout.BodyAreaContainer.render
(BodyAreaContainer.java:137)
at org.apache.fop.render.AbstractRenderer.renderRegions
(AbstractRenderer.java:529)
at org.apache.fop.render.pdf.PDFRenderer.renderPage
(PDFRenderer.java:904)
at org.apache.fop.render.pdf.PDFRenderer.render(PDFRenderer.java:880)
at org.apache.fop.apps.StreamRenderer.queuePage(StreamRenderer.java:302)
at org.apache.fop.layout.AreaTree.addPage(AreaTree.java:108)
at org.apache.fop.fo.pagination.PageSequence.makePage
(PageSequence.java:415)
at org.apache.fop.fo.pagination.PageSequence.format
(PageSequence.java:338)
at org.apache.fop.apps.StreamRenderer.render(StreamRenderer.java:262)
at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:223)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown
Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement
(Unknown Source)
at
org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.
dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument
(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.DTDConfiguration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.fop.apps.Driver.render(Driver.java:498)
at org.apache.fop.apps.CommandLineStarter.run
(CommandLineStarter.java:106)
at org.apache.fop.apps.Fop.main(Fop.java:62)
[INFO] Parsing of document complete, stopping renderer
I tested the same svg code in Batik's SVG Viewer Batik-Squiggle without any
problem.
When I remove the '%' from the positioning attributes x and y of svg:use, there
is no problem, except from the fact that the image that is produced is not what
I meant. The same problem exists when I use 'cm' instead of '%'.
I first posted this question in Batik's mailinglist. We concluded that the
problem lies within FOP, it seems that "FOP doesn't pass the svg element to
Batiks bridge".
Any suggestions?
thanx & greetings
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org