Expand my Community achievements bar.

SOLVED

apache fop - adding dam images into the pdf

Avatar

Level 5

Hello,

I'm using Apache FOP to convert page into pdf but i'm unable to add images from DAM into the pdf.

I'm using this tag in the fop xslt

<fo:external-graphic src="sling://content/dam/myproject/img/image.jpeg"/>

and have included the following namespaces into the xslt:

  xmlns:xsl="http://www.w3.org/1999/XSL/Transform"

  xmlns:fo="http://www.w3.org/1999/XSL/Format"

  xmlns:jcr="http://www.jcp.org/jcr/1.0"

  xmlns:sling="http://sling.apache.org/jcr/sling/1.0"

  xmlns:dam="http://www.day.com/dam/1.0"

But the image just isn't rendered. What am I doing wrong here?

Any help much appreciated. Thanks.

1 Accepted Solution

Avatar

Correct answer by
Level 5

Actually, I should have mentioned it before - I'm using the FOP API directly to generate the pdf and not the ootb solution AEM comes with.

The ootb solution seems to have a few customizations to the API especially with regards to setting a custom URIResolver.

Similarly, in my case, I had to write a custom URIResolver which would search for the image paths within the repo and not on the file system and configure the API to use this resolver. That has fixed the problem.

More details here:

Apache(tm) FOP: Embedding

View solution in original post

9 Replies

Avatar

Level 10

I am not sure we have docs for this use case - let me check.

Avatar

Level 5

That will help a lot. Thank you

Avatar

Level 10

For a test - if you place the images in aother location - are they picked up?

Avatar

Level 5

No...tried putting them inside etc and apps but the image still doesn't show up.

Avatar

Correct answer by
Level 5

Actually, I should have mentioned it before - I'm using the FOP API directly to generate the pdf and not the ootb solution AEM comes with.

The ootb solution seems to have a few customizations to the API especially with regards to setting a custom URIResolver.

Similarly, in my case, I had to write a custom URIResolver which would search for the image paths within the repo and not on the file system and configure the API to use this resolver. That has fixed the problem.

More details here:

Apache(tm) FOP: Embedding

Avatar

Level 1

I wanted to know how you have Created the Custom URI resolver in AEM.

How you have passed the custom URI resolver of AEM into FOP.

Please help me with the same.

Avatar

Level 1

Hi jakej40603950,

can you help me on this please