Hi Ricardo,

I do not know if it possible using ERPDFWrapper but I suggest to try svg images 
(directly embedded and using object element). SVG is the only vector format 
that is almost universally supported on web browser.

I know my own solution works for vector images and do font embedding. If you 
deploy on a Mac or can access a Mac from your server, my PDF generator would 
works. This server app render HTML with Webkit and print it to PDF.

https://github.com/Kaviju/Html2PdfServer 
<https://github.com/Kaviju/Html2PdfServer>


Samuel


> Le 2015-11-17 à 12:01, Ricardo Parada <[email protected]> a écrit :
> 
> Hi all,
> 
> We use ERPDFWrapper to generate PDF from a WOComponent.  It comes out 
> beautiful.  
> 
> One of our components includes a logo using the <img> html tag and the logo 
> is usually a .gif or .jpg.  However, I would like to use vector graphics.  We 
> took a .eps file and converted it to .pdf in Photoshop.  The resulting image 
> scales beautifully to any size.  When I try to use the .pdf I get 
> java.lang.ClassCastException: org.xhtmlrenderer.pdf.PDFAsImage cannot be cast 
> to org.xhtmlrenderer.pdf.ITextFSImage.  
> 
> Has anybody been able to use vector graphics in ERPDFWrapper?
> 
> Thanks
> 
> The stack trace is below:
> 
> java.lang.ClassCastException: org.xhtmlrenderer.pdf.PDFAsImage cannot be cast 
> to org.xhtmlrenderer.pdf.ITextFSImage
>                 at 
> org.xhtmlrenderer.pdf.ITextUserAgent.getImageResource(ITextUserAgent.java:97)
>                 at 
> org.xhtmlrenderer.pdf.ITextReplacedElementFactory.createReplacedElement(ITextReplacedElementFactory.java:57)
>                 at 
> er.pdf.builder.ERPDFReplacedElementFactory.createReplacedElement(ERPDFReplacedElementFactory.java:50)
>                 at 
> org.xhtmlrenderer.render.BlockBox.calcMinMaxWidth(BlockBox.java:1439)
>                 at 
> org.xhtmlrenderer.render.BlockBox.calcMinMaxWidthInlineChildren(BlockBox.java:1584)
>                 at 
> org.xhtmlrenderer.render.BlockBox.calcMinMaxWidth(BlockBox.java:1481)
>                 at 
> org.xhtmlrenderer.newtable.TableBox$AutoTableLayout.recalcColumn(TableBox.java:1240)
>                 at 
> org.xhtmlrenderer.newtable.TableBox$AutoTableLayout.fullRecalc(TableBox.java:1214)
>                 at 
> org.xhtmlrenderer.newtable.TableBox$AutoTableLayout.calcMinMaxWidth(TableBox.java:1509)
>                 at 
> org.xhtmlrenderer.newtable.TableBox.calcMinMaxWidth(TableBox.java:158)
>                 at 
> org.xhtmlrenderer.newtable.TableBox.layout(TableBox.java:221)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutBlockChild0(BlockBoxing.java:321)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutBlockChild(BlockBoxing.java:299)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutContent(BlockBoxing.java:90)
>                 at 
> org.xhtmlrenderer.render.BlockBox.layoutChildren(BlockBox.java:926)
>                 at org.xhtmlrenderer.render.BlockBox.layout(BlockBox.java:806)
>                 at org.xhtmlrenderer.render.BlockBox.layout(BlockBox.java:735)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutBlockChild0(BlockBoxing.java:321)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutBlockChild(BlockBoxing.java:299)
>                 at 
> org.xhtmlrenderer.layout.BlockBoxing.layoutContent(BlockBoxing.java:90)
>                 at 
> org.xhtmlrenderer.render.BlockBox.layoutChildren(BlockBox.java:926)
>                 at org.xhtmlrenderer.render.BlockBox.layout(BlockBox.java:806)
>                 at org.xhtmlrenderer.render.BlockBox.layout(BlockBox.java:735)
>                 at 
> org.xhtmlrenderer.pdf.ITextRenderer.layout(ITextRenderer.java:216)
>                 at 
> er.pdf.builder.FlyingSaucerImpl.setSource(FlyingSaucerImpl.java:99)
>                 at er.pdf.ERPDFUtilities.htmlAsPdf(ERPDFUtilities.java:123)
>                 at er.pdf.ERPDFWrapper.responseAsPdf(ERPDFWrapper.java:75)
>                 at er.pdf.ERPDFWrapper.appendToResponse(ERPDFWrapper.java:60)
>                 at 
> com.webobjects.appserver.WOComponent.appendToResponse(WOComponent.java:1122)
>                 at 
> er.extensions.components.ERXComponent.appendToResponse(ERXComponent.java:117)
>                 at 
> er.extensions.components.ERXNonSynchronizingComponent.appendToResponse(ERXNonSynchronizingComponent.java:73)
>                 at 
> com.mpv.webcomponents.MPVWOComponent.appendToResponse(MPVWOComponent.java:67)
>                 at 
> com.webobjects.appserver.WOSession.appendToResponse(WOSession.java:1385)
>                 at 
> er.extensions.appserver.ERXSession.appendToResponse(ERXSession.java:552)
> ...
> 
> _______________________________________________
> Do not post admin requests to the list. They will be ignored.
> Webobjects-dev mailing list      ([email protected])
> Help/Unsubscribe/Update your Subscription:
> https://lists.apple.com/mailman/options/webobjects-dev/samuel%40samkar.com
> 
> This email sent to [email protected]

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
https://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [email protected]

Reply via email to