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 James Richardson <ja...@db.com> on 2001/11/30 16:15:34 UTC
Fill pattern problem
Hi,
The following svg file crashes out the PDF renderer.... I hand wrote the
file, so I dont know if is a bug in the XML. Adobe's plugin seems to
render it OK.
<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20000303 Stylable//EN"
"http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303-stylable.dtd"
>
<svg xml-space="preserve" preserveAspectRatio="xMaxYMaxmeet"
xmlns:svg="http://www.w3.org/2000/svg" >
<defs>
<pattern id="pattern" x="0" y="0" patternUnits="userSpaceOnUse"
width="185" height="200">
<g transform="rotate(45 100 15) translate(50 50)" >
<g fill="#000066" stroke="#000066">
<text x="0" y="33.75" font-family="Helvetica" font-size="20">Pattern
Fill</text>
</g>
</g>
</pattern>
</defs>
<g id="overlay" opacity="0.50">
<rect x="0" y="0" width="900" height="470" fill="url(#pattern)"
stroke="black" stroke-width="0">
</g>
</svg>
Heres the FO
<?xml version="1.0" encoding="UTF-8"?>
<fo:root font-family="Univers" font-size="9pt" text-align="center" xmlns:fo
="http://www.w3.org/1999/XSL/Format">
<fo:layout-master-set>
<fo:simple-page-master margin-bottom="25pt" margin-left="100pt"
margin-right="50pt" margin-top="75pt" master-name="simple" page-height
="210mm" page-width="297mm">
<fo:region-body margin-bottom="50pt"/>
<fo:region-after extent="25pt"/>
</fo:simple-page-master>
</fo:layout-master-set>
<fo:page-sequence master-name="simple">
<fo:static-content flow-name="xsl-region-after">
<fo:block font-size="7pt" text-align-last="center">
<fo:page-number/>
</fo:block>
</fo:static-content>
<fo:flow flow-name="xsl-region-body">
<fo:block>
<fo:instream-foreign-object>
<svg:svg height="150mm" width="250mm" xmlns:svg
="http://www.w3.org/2000/svg">
<svg:image height="478" transform
="scale(0.6)" width="1145" xlink:href="file:///m:/overlay.txt"/>
</svg:svg>
</fo:instream-foreign-object>
</fo:block>
</fo:flow>
</fo:page-sequence>
</fo:root>
org.apache.fop.apps.Fop svgtest.fo svgtest.pdf
[INFO]: FOP 0.20.2
[INFO]: building formatting object tree
[INFO]: [1]
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: unknown font Univers,normal,normal so defaulted font to any
[ERROR]: svg graphic could not be built: java.lang.Object
java.lang.ClassCastException: java.lang.Object
at
org.apache.batik.bridge.SVGImageElementBridge.createRasterImageNode(SVGImageElementBridge.java:167)
at
org.apache.batik.bridge.SVGImageElementBridge.createGraphicsNode(SVGImageElementBridge.java:109)
at
org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:167)
at
org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:133)
at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:66)
at
org.apache.fop.render.pdf.PDFRenderer.renderSVGDocument(PDFRenderer.java:413)
at
org.apache.fop.render.pdf.PDFRenderer.renderSVGArea(PDFRenderer.java:382)
at org.apache.fop.svg.SVGArea.render(SVGArea.java:58)
at
org.apache.fop.render.pdf.PDFRenderer.renderForeignObjectArea(PDFRenderer.java:366)
at
org.apache.fop.layout.inline.ForeignObjectArea.render(ForeignObjectArea.java:50)
at
org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:223)
at org.apache.fop.layout.LineArea.render(LineArea.java:162)
at
org.apache.fop.render.AbstractRenderer.renderBlockArea(AbstractRenderer.java:192)
at org.apache.fop.layout.BlockArea.render(BlockArea.java:82)
at
org.apache.fop.render.AbstractRenderer.renderAreaContainer(AbstractRenderer.java:158)
at org.apache.fop.layout.ColumnArea.render(ColumnArea.java:33)
at
org.apache.fop.render.AbstractRenderer.renderSpanArea(AbstractRenderer.java:58)
at org.apache.fop.layout.SpanArea.render(SpanArea.java:53)
at
org.apache.fop.render.AbstractRenderer.renderBodyAreaContainer(AbstractRenderer.java:114)
at
org.apache.fop.render.pdf.PDFRenderer.renderPage(PDFRenderer.java:728)
at org.apache.fop.render.pdf.PDFRenderer.render(PDFRenderer.java:696)
at
org.apache.fop.apps.StreamRenderer.queuePage(StreamRenderer.java:206)
at org.apache.fop.layout.AreaTree.addPage(AreaTree.java:81)
at
org.apache.fop.fo.pagination.PageSequence.format(PageSequence.java:305)
at org.apache.fop.apps.StreamRenderer.render(StreamRenderer.java:191)
at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:178)
at org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1398)
at
org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1019)
at
org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1256)
at
org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)
at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:948)
at org.apache.fop.apps.Driver.render(Driver.java:459)
at
org.apache.fop.apps.CommandLineStarter.run(CommandLineStarter.java:72)
at org.apache.fop.apps.Fop.main(Fop.java:19)
[INFO]: Parsing of document complete, stopping renderer
Best Regards,
James
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org
Re: Fill pattern problem
Posted by James Richardson <ja...@db.com>.
Please excuse my stupidity....
I had the following in the SVG:
<g id="overlay" opacity="0.07">
<rect x="0" y="0" width="900" height="470" fill="url(#pattern)"
stroke="black" stroke-width="0">
</g>
Note lack of end tag for the <rect>
Still, the error msg threw me a little.....
Cheers!
James
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org
Re: Fill pattern problem
Posted by James Richardson <ja...@db.com>.
Keiron Liddle wrote:
>
>
> Hi,
>
> Have you tried the svg standalone though batik.
> The exception is being thrown by batik. It looks like a problem where
> batik causes a class cast exception when an image cannot be found (ie.
> file:///m:/overlay.txt is wrong).
My apologies, I didn't explain. The given SVG file was saved as
m:/overlay.txt.
I will try Batik by itself.....then maybe hop to the Batik mailinglist.
Cheers!
James
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org
Re: Fill pattern problem
Posted by Keiron Liddle <ke...@aftexsw.com>.
Hi,
Have you tried the svg standalone though batik.
The exception is being thrown by batik. It looks like a problem where
batik causes a class cast exception when an image cannot be found (ie.
file:///m:/overlay.txt is wrong). The problem is that batik tries to load
a broken image svg from within batik. When it tries to load this image it
uses the default xml parser (which is wrong) and then cannot load it, so
it uses a simple svg instead. In another part it gets a graphics hint from
the image's object but java incorrectly returns an Object instead of null
then the class cast exception occurs as it expects another type of object
that is only with the brocken link image.
So the result is that batik was fixed to handle this better and FOP sets
the default xml parser on batik. If I remember correctly this was in the
last release.
On 2001.11.30 16:15 James Richardson wrote:
>
> Hi,
>
> The following svg file crashes out the PDF renderer.... I hand wrote the
> file, so I dont know if is a bug in the XML. Adobe's plugin seems to
> render it OK.
>
>
>
> <?xml version="1.0" encoding="iso-8859-1"?>
> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 20000303 Stylable//EN"
> "http://www.w3.org/TR/2000/03/WD-SVG-20000303/DTD/svg-20000303-stylable.dtd" >
> <svg xml-space="preserve" preserveAspectRatio="xMaxYMaxmeet"
> xmlns:svg="http://www.w3.org/2000/svg" >
> <defs> <pattern id="pattern" x="0" y="0"
> patternUnits="userSpaceOnUse" width="185" height="200">
> <g transform="rotate(45 100 15) translate(50 50)" >
> <g fill="#000066" stroke="#000066">
> <text x="0" y="33.75" font-family="Helvetica"
> font-size="20">Pattern Fill</text>
> </g>
> </g>
> </pattern>
> </defs>
>
> <g id="overlay" opacity="0.50">
> <rect x="0" y="0" width="900" height="470" fill="url(#pattern)"
> stroke="black" stroke-width="0">
> </g>
> </svg>
>
>
> Heres the FO
>
> <?xml version="1.0" encoding="UTF-8"?>
> <fo:root font-family="Univers" font-size="9pt" text-align="center"
> xmlns:fo
> ="http://www.w3.org/1999/XSL/Format">
> <fo:layout-master-set>
> <fo:simple-page-master margin-bottom="25pt" margin-left="100pt"
> margin-right="50pt" margin-top="75pt" master-name="simple" page-height
> ="210mm" page-width="297mm">
> <fo:region-body margin-bottom="50pt"/>
> <fo:region-after extent="25pt"/>
> </fo:simple-page-master>
> </fo:layout-master-set>
>
> <fo:page-sequence master-name="simple">
> <fo:static-content flow-name="xsl-region-after">
> <fo:block font-size="7pt" text-align-last="center">
> <fo:page-number/>
> </fo:block>
> </fo:static-content>
>
> <fo:flow flow-name="xsl-region-body">
> <fo:block>
> <fo:instream-foreign-object>
> <svg:svg height="150mm" width="250mm" xmlns:svg
> ="http://www.w3.org/2000/svg">
> <svg:image height="478" transform
> ="scale(0.6)" width="1145" xlink:href="file:///m:/overlay.txt"/>
> </svg:svg>
> </fo:instream-foreign-object>
> </fo:block>
> </fo:flow>
> </fo:page-sequence>
> </fo:root>
>
>
>
>
>
> org.apache.fop.apps.Fop svgtest.fo svgtest.pdf
> [INFO]: FOP 0.20.2
> [INFO]: building formatting object tree
> [INFO]: [1]
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: unknown font Univers,normal,normal so defaulted font to any
> [ERROR]: svg graphic could not be built: java.lang.Object
> java.lang.ClassCastException: java.lang.Object
> at
> org.apache.batik.bridge.SVGImageElementBridge.createRasterImageNode(SVGImageElementBridge.java:167)
> at
> org.apache.batik.bridge.SVGImageElementBridge.createGraphicsNode(SVGImageElementBridge.java:109)
> at
> org.apache.batik.bridge.GVTBuilder.buildGraphicsNode(GVTBuilder.java:167)
> at
> org.apache.batik.bridge.GVTBuilder.buildComposite(GVTBuilder.java:133)
> at org.apache.batik.bridge.GVTBuilder.build(GVTBuilder.java:66)
> at
> org.apache.fop.render.pdf.PDFRenderer.renderSVGDocument(PDFRenderer.java:413)
> at
> org.apache.fop.render.pdf.PDFRenderer.renderSVGArea(PDFRenderer.java:382)
> at org.apache.fop.svg.SVGArea.render(SVGArea.java:58)
> at
> org.apache.fop.render.pdf.PDFRenderer.renderForeignObjectArea(PDFRenderer.java:366)
> at
> org.apache.fop.layout.inline.ForeignObjectArea.render(ForeignObjectArea.java:50)
> at
> org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:223)
> at org.apache.fop.layout.LineArea.render(LineArea.java:162)
> at
> org.apache.fop.render.AbstractRenderer.renderBlockArea(AbstractRenderer.java:192)
> at org.apache.fop.layout.BlockArea.render(BlockArea.java:82)
> at
> org.apache.fop.render.AbstractRenderer.renderAreaContainer(AbstractRenderer.java:158)
> at org.apache.fop.layout.ColumnArea.render(ColumnArea.java:33)
> at
> org.apache.fop.render.AbstractRenderer.renderSpanArea(AbstractRenderer.java:58)
> at org.apache.fop.layout.SpanArea.render(SpanArea.java:53)
> at
> org.apache.fop.render.AbstractRenderer.renderBodyAreaContainer(AbstractRenderer.java:114)
> at
> org.apache.fop.render.pdf.PDFRenderer.renderPage(PDFRenderer.java:728)
> at
> org.apache.fop.render.pdf.PDFRenderer.render(PDFRenderer.java:696)
> at
> org.apache.fop.apps.StreamRenderer.queuePage(StreamRenderer.java:206)
> at org.apache.fop.layout.AreaTree.addPage(AreaTree.java:81)
> at
> org.apache.fop.fo.pagination.PageSequence.format(PageSequence.java:305)
> at
> org.apache.fop.apps.StreamRenderer.render(StreamRenderer.java:191)
> at
> org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:178)
> at
> org.apache.xerces.parsers.SAXParser.endElement(SAXParser.java:1398)
> at
> org.apache.xerces.validators.common.XMLValidator.callEndElement(XMLValidator.java:1019)
> at
> org.apache.xerces.framework.XMLDocumentScanner$ContentDispatcher.dispatch(XMLDocumentScanner.java:1256)
> at
> org.apache.xerces.framework.XMLDocumentScanner.parseSome(XMLDocumentScanner.java:381)
> at org.apache.xerces.framework.XMLParser.parse(XMLParser.java:948)
> at org.apache.fop.apps.Driver.render(Driver.java:459)
> at
> org.apache.fop.apps.CommandLineStarter.run(CommandLineStarter.java:72)
> at org.apache.fop.apps.Fop.main(Fop.java:19)
> [INFO]: Parsing of document complete, stopping renderer
>
>
>
>
> Best Regards,
>
> James
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
> For additional commands, email: fop-dev-help@xml.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: fop-dev-unsubscribe@xml.apache.org
For additional commands, email: fop-dev-help@xml.apache.org