Re: AFP: Data object located at '...' of type 'image/tiff' cannot be reference with an include...

2008-07-30 Thread Adrian Cumiskey

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 

Re: AFP: Data object located at '...' of type 'image/tiff' cannot be reference with an include...

2008-07-30 Thread Jeremias Maerki
Thanks for your answers, Adrian.

On 30.07.2008 14:51:57 Adrian Cumiskey wrote:
 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.

Sorry, this was no properly written question. I can see that it is
marked as such, but why do you consider this a reason to issue a warning?
If it's technically impossible to use the image a includable resource,
then it simply has to be inlined. I don't see a reason to confuse the
user with this.

  - 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.

Sounds promising.

  - 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.

Probably an inconvenience but a document with a TIFF logo on every page
will profit quite a bit from the TIFF being includable.

  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.

If you put JAI ImageIO Tools in the classpath, this will work fine.

 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