[jira] [Updated] (FOP-2468) Render svg throw NPE if use local fonts with metrics xml.
[ https://issues.apache.org/jira/browse/FOP-2468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] chunlinyao updated FOP-2468: Attachment: bug.zip unzip this zip file in the fop folder. run `./fop -c config.xml bug.fo bug.pdf` will reproduce this bug. Render svg throw NPE if use local fonts with metrics xml. - Key: FOP-2468 URL: https://issues.apache.org/jira/browse/FOP-2468 Project: Fop Issue Type: Bug Components: foreign/svg Affects Versions: trunk Reporter: chunlinyao Attachments: bug.zip, test.fo I got a error when use svg with local fonts. It seems boundingboxes is null. SVG graphic could not be rendered. Reason: java.lang.NullPointerException java.lang.NullPointerException at org.apache.fop.fonts.MultiByteFont.getBoundingBox(MultiByteFont.java:210) at org.apache.fop.fonts.LazyFont.getBoundingBox(LazyFont.java:301) at org.apache.fop.svg.font.FOPGVTGlyphVector.buildBoundingBoxes(FOPGVTGlyphVector.java:428) at org.apache.fop.svg.font.FOPGVTGlyphVector.getBoundingBoxes(FOPGVTGlyphVector.java:420) at org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphMetrics(FOPGVTGlyphVector.java:290) at org.apache.batik.bridge.GlyphLayout.doExplicitGlyphLayout(Unknown Source) at org.apache.batik.bridge.GlyphLayout.adjustTextSpacing(Unknown Source) at org.apache.batik.bridge.GlyphLayout.getAdvance2D(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.getTextChunk(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.computeTextRuns(Unknown Source) at org.apache.fop.svg.NativeTextPainter.computeTextRuns(NativeTextPainter.java:223) at org.apache.batik.bridge.StrokingTextPainter.getTextRuns(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.getBounds2D(Unknown Source) at org.apache.batik.bridge.TextNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getTransformedPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.paint(Unknown Source) at org.apache.fop.render.pdf.PDFImageHandlerSVG.handleImage(PDFImageHandlerSVG.java:207) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImage(AbstractIFPainter.java:249) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImage(AbstractIFPainter.java:205) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImageUsingImageHandler(AbstractIFPainter.java:170) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImageUsingDocument(AbstractIFPainter.java:319) at org.apache.fop.render.pdf.PDFPainter.drawImage(PDFPainter.java:232) at org.apache.fop.render.intermediate.IFRenderer.renderForeignObject(IFRenderer.java:1308) at org.apache.fop.render.AbstractRenderer.renderInlineViewport(AbstractRenderer.java:861) at org.apache.fop.render.AbstractPathOrientedRenderer.renderInlineViewport(AbstractPathOrientedRenderer.java:832) at org.apache.fop.render.intermediate.IFRenderer.renderInlineViewport(IFRenderer.java:862) at org.apache.fop.render.AbstractRenderer.renderInlineArea(AbstractRenderer.java:714) at org.apache.fop.render.intermediate.IFRenderer.renderInlineArea(IFRenderer.java:926) at org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:689) at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:571) at org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:612) at org.apache.fop.render.intermediate.IFRenderer.renderBlock(IFRenderer.java:998) at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:556) at org.apache.fop.render.AbstractRenderer.renderFlow(AbstractRenderer.java:456) at org.apache.fop.render.AbstractPathOrientedRenderer.renderFlow(AbstractPathOrientedRenderer.java:785) at org.apache.fop.render.AbstractRenderer.renderMainReference(AbstractRenderer.java:433) at org.apache.fop.render.AbstractRenderer.renderBodyRegion(AbstractRenderer.java:357) at
[jira] [Updated] (FOP-2468) Render svg throw NPE if use local fonts with metrics xml.
[ https://issues.apache.org/jira/browse/FOP-2468?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] chunlinyao updated FOP-2468: Attachment: test.fo The fo file Render svg throw NPE if use local fonts with metrics xml. - Key: FOP-2468 URL: https://issues.apache.org/jira/browse/FOP-2468 Project: Fop Issue Type: Bug Components: foreign/svg Affects Versions: trunk Reporter: chunlinyao Attachments: test.fo I got a error when use svg with local fonts. It seems boundingboxes is null. SVG graphic could not be rendered. Reason: java.lang.NullPointerException java.lang.NullPointerException at org.apache.fop.fonts.MultiByteFont.getBoundingBox(MultiByteFont.java:210) at org.apache.fop.fonts.LazyFont.getBoundingBox(LazyFont.java:301) at org.apache.fop.svg.font.FOPGVTGlyphVector.buildBoundingBoxes(FOPGVTGlyphVector.java:428) at org.apache.fop.svg.font.FOPGVTGlyphVector.getBoundingBoxes(FOPGVTGlyphVector.java:420) at org.apache.fop.svg.font.FOPGVTGlyphVector.getGlyphMetrics(FOPGVTGlyphVector.java:290) at org.apache.batik.bridge.GlyphLayout.doExplicitGlyphLayout(Unknown Source) at org.apache.batik.bridge.GlyphLayout.adjustTextSpacing(Unknown Source) at org.apache.batik.bridge.GlyphLayout.getAdvance2D(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.getTextChunk(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.computeTextRuns(Unknown Source) at org.apache.fop.svg.NativeTextPainter.computeTextRuns(NativeTextPainter.java:223) at org.apache.batik.bridge.StrokingTextPainter.getTextRuns(Unknown Source) at org.apache.batik.bridge.StrokingTextPainter.getBounds2D(Unknown Source) at org.apache.batik.bridge.TextNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getTransformedPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getTransformedBounds(Unknown Source) at org.apache.batik.gvt.CompositeGraphicsNode.getPrimitiveBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.getBounds(Unknown Source) at org.apache.batik.gvt.AbstractGraphicsNode.paint(Unknown Source) at org.apache.fop.render.pdf.PDFImageHandlerSVG.handleImage(PDFImageHandlerSVG.java:207) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImage(AbstractIFPainter.java:249) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImage(AbstractIFPainter.java:205) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImageUsingImageHandler(AbstractIFPainter.java:170) at org.apache.fop.render.intermediate.AbstractIFPainter.drawImageUsingDocument(AbstractIFPainter.java:319) at org.apache.fop.render.pdf.PDFPainter.drawImage(PDFPainter.java:232) at org.apache.fop.render.intermediate.IFRenderer.renderForeignObject(IFRenderer.java:1308) at org.apache.fop.render.AbstractRenderer.renderInlineViewport(AbstractRenderer.java:861) at org.apache.fop.render.AbstractPathOrientedRenderer.renderInlineViewport(AbstractPathOrientedRenderer.java:832) at org.apache.fop.render.intermediate.IFRenderer.renderInlineViewport(IFRenderer.java:862) at org.apache.fop.render.AbstractRenderer.renderInlineArea(AbstractRenderer.java:714) at org.apache.fop.render.intermediate.IFRenderer.renderInlineArea(IFRenderer.java:926) at org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:689) at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:571) at org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:612) at org.apache.fop.render.intermediate.IFRenderer.renderBlock(IFRenderer.java:998) at org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:556) at org.apache.fop.render.AbstractRenderer.renderFlow(AbstractRenderer.java:456) at org.apache.fop.render.AbstractPathOrientedRenderer.renderFlow(AbstractPathOrientedRenderer.java:785) at org.apache.fop.render.AbstractRenderer.renderMainReference(AbstractRenderer.java:433) at org.apache.fop.render.AbstractRenderer.renderBodyRegion(AbstractRenderer.java:357) at org.apache.fop.render.AbstractRenderer.renderRegionViewport(AbstractRenderer.java:304) at