Adrian Cumiskey
Wed, 30 Jul 2008 05:52:02 -0700
Hi Jeremias, Jeremias Maerki wrote:
Adrian, I'm seeing the warning in the subject when rendering some of the external-graphic-* test cases to AFP. I've got a few questions: - Why is this warning?
This is because TIFF images are currently set to be not includable in the Registry.
- Isn't there something incorrect if you indicate GIF or JPEG as object type when the object is actually a IOCA object and not a GIF or JPEG file? For CCITT TIFFs the same applies because not the whole TIFF file with its record structure is embedded but only the compressed CCITT data stream. I'd only expect a JPEG object type if the image is actually embedded as a JPEG file (like in PDF) which is currently not the case.
Strictly speaking I should probably be using an ObjectContainer instead. This should be a small change.
- Why shouldn't a TIFF file not be includable as a resource in the first place?
I seemed to recall when reading the MO:DCA reference that TIFF was not supported with an IOB (include object). But after reading the spec again and trying out the external-graphic_tiff test case it does work in the AFP Workbench and also prints without error. Including the object does however break one of my other test tools (AFP Lookup) but I guess this isn't so important.
BTW, CCITT-encoded images don't seem to work at all right now in the GOCA branch. Are you aware of that?
No I wasn't, it seems to work ok in trunk - there is a regression there I'll take a look. BTW I ran the external-graphic_tiff.xml test on the 0_95 branch for comparison but was unable to as the ImageManager seemed to have a problem loading the image so there seems to be a problem there.
SEVERE: Error while processing image: ../../resources/images/bgimg300dpi.tif (image/tiff)org.apache.xmlgraphics.image.loader.ImageException: Cannot load image (no suitable loader/converter combination available) for ../../resources/images/bgimg300dpi.tif (image/tiff)
at
org.apache.xmlgraphics.image.loader.ImageManager.getImage(ImageManager.java:248)
at
org.apache.fop.render.afp.AFPRenderer.drawImage(AFPRenderer.java:1019)
at
org.apache.fop.render.AbstractPathOrientedRenderer.drawImage(AbstractPathOrientedRenderer.java:758)
at
org.apache.fop.render.afp.AFPRenderer.renderImage(AFPRenderer.java:1326)
at
org.apache.fop.render.AbstractRenderer.renderViewport(AbstractRenderer.java:743)
at
org.apache.fop.render.AbstractPathOrientedRenderer.renderViewport(AbstractPathOrientedRenderer.java:621)
at
org.apache.fop.render.AbstractRenderer.renderInlineArea(AbstractRenderer.java:626)
at
org.apache.fop.render.AbstractRenderer.renderLineArea(AbstractRenderer.java:601)
at
org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:536)
at
org.apache.fop.render.AbstractRenderer.renderBlock(AbstractRenderer.java:573)
at
org.apache.fop.render.AbstractRenderer.renderBlocks(AbstractRenderer.java:526)
at
org.apache.fop.render.AbstractRenderer.renderFlow(AbstractRenderer.java:424)
at
org.apache.fop.render.AbstractPathOrientedRenderer.renderFlow(AbstractPathOrientedRenderer.java:577)
at
org.apache.fop.render.afp.AFPRenderer.renderFlow(AFPRenderer.java:647)
at
org.apache.fop.render.AbstractRenderer.renderMainReference(AbstractRenderer.java:403)
at
org.apache.fop.render.AbstractRenderer.renderBodyRegion(AbstractRenderer.java:337)
at
org.apache.fop.render.afp.AFPRenderer.renderRegionViewport(AFPRenderer.java:457)
at
org.apache.fop.render.AbstractRenderer.renderPageAreas(AbstractRenderer.java:255)
at
org.apache.fop.render.afp.AFPRenderer.renderPage(AFPRenderer.java:700)
at
org.apache.fop.area.RenderPagesModel.addPage(RenderPagesModel.java:113)
at
org.apache.fop.layoutmgr.AbstractPageSequenceLayoutManager.finishPage(AbstractPageSequenceLayoutManager.java:312)
at
org.apache.fop.layoutmgr.PageSequenceLayoutManager.finishPage(PageSequenceLayoutManager.java:167)
at
org.apache.fop.layoutmgr.PageSequenceLayoutManager.activateLayout(PageSequenceLayoutManager.java:108)
at
org.apache.fop.area.AreaTreeHandler.endPageSequence(AreaTreeHandler.java:234)
at
org.apache.fop.fo.pagination.PageSequence.endOfNode(PageSequence.java:123)
at
org.apache.fop.fo.FOTreeBuilder$MainFOHandler.endElement(FOTreeBuilder.java:340)
at org.apache.fop.fo.FOTreeBuilder.endElement(FOTreeBuilder.java:169)
at
org.apache.xalan.transformer.ResultTreeHandler.endElement(ResultTreeHandler.java:309)
at org.apache.xalan.templates.ElemCopy.execute(ElemCopy.java:166)
at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:425)
at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:216)
at
org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2339)
at org.apache.xalan.templates.ElemCopy.execute(ElemCopy.java:162)
at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:425)
at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:216)
at
org.apache.xalan.templates.ElemApplyTemplates.transformSelectedNodes(ElemApplyTemplates.java:425)
at
org.apache.xalan.templates.ElemApplyTemplates.execute(ElemApplyTemplates.java:216)
at
org.apache.xalan.transformer.TransformerImpl.executeChildTemplates(TransformerImpl.java:2339)
at
org.apache.xalan.transformer.TransformerImpl.applyTemplateToNode(TransformerImpl.java:2160)
at
org.apache.xalan.transformer.TransformerImpl.transformNode(TransformerImpl.java:1213)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:668)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1129)
at
org.apache.xalan.transformer.TransformerImpl.transform(TransformerImpl.java:1107)
at org.apache.fop.cli.InputHandler.transformTo(InputHandler.java:214)
at org.apache.fop.cli.InputHandler.renderTo(InputHandler.java:125)
at org.apache.fop.cli.Main.startFOP(Main.java:166)
at org.apache.fop.cli.Main.main(Main.java:197)
Thanks, Jeremias Maerki