Subject: Re: [xsl] Trouble adding an image to FO From: "Glen Mazza" <grm7790@xxxxxxxxx> Date: Tue, 25 May 2004 13:26:04 -0400 |
This looks like a common issue. You may wish to ask on the FOP-USER list for help, or search its archives. Glen ----- Original Message ----- From: "Ian Lang" <ianplang@xxxxxxxxx> To: "XSLT List" <XSL-List@xxxxxxxxxxxxxxxxxxxxxx> Sent: Tuesday, May 25, 2004 1:02 PM Subject: [xsl] Trouble adding an image to FO > I am using FOP to generate a PDF. The FO xml is > coming from XSLT. The trouble is I cannot seem to get > images to show up correctly. When I prototyped this > from the command line and the xsl, FO and images were > all in the same directory everything was cool but now > that I have moved to code the images cannot be found > by FOP. > > Origonally I was producing an FO element like this: > <fo:external-graphic height="10pt" width="10pt" > src="15272099.gif" /> > > which yielded an error from FOP: > [ERROR] Error while creating area : Error with image > URL: 15272099.gif (The handle is invalid. > ) and no base URL is specified > > The images, FO and output PDF are still in the same > directory but it is not the current directory from the > command line any more the rendering is being done in > Java code. So I did some experimenting and tried > passing full paths like this: > <fo:external-graphic height="10pt" width="10pt" > src="C:\Temp\Report/8390677.gif" /> > > which yielded an error from FOP: > [ERROR] Error in XObject : Error while loading image > file:C:/Temp/Report/8390677.gif : class > java.lang.ClassCastException - > java/io/BufferedInputStream incompatible with > java/awt/image/ImageProducer > > I also tried file: URL formats which did not help. > Then after doing some digging I found reference to an > FO function 'url()'. I tried that with XSL like this: > <xsl:variable name="iconFullPath"> > <xsl:value-of select="concat('url("', > $outputDir, $fileSep, @publish:icon, '")')"/> > </xsl:variable> > <xsl:message> > <xsl:value-of select="$newLine"/> > <xsl:text>Adding a graphic to the FO XML. The icon > attribute is '</xsl:text> > <xsl:value-of select="@publish:icon"/> > <xsl:text>' and the full uri is '</xsl:text> > <xsl:value-of select="$iconFullPath"/> > <xsl:text>'.</xsl:text> > </xsl:message> > > <fo:block font-size="12pt" line-height="15pt" > start-indent="0.5cm"> > <fo:external-graphic width="10pt" height="10pt"> > <xsl:attribute name="src"><xsl:value-of > select="$iconFullPath"/></xsl:attribute> > </fo:external-graphic> > <xsl:value-of select="@publish:qualifiedname"/> > </fo:block> > > Which creates these FO elements: > <fo:block start-indent="0.5cm" line-height="15pt" > font-size="12pt"> > <fo:external-graphic height="10pt" width="10pt" > src="url("C:\Temp\Report/8390677.gif")" /> > an.element.qualifed.name > </fo:block> > > Which produced xsl:message entry: > Adding a graphic to the FO XML. The icon attribute is > '8390677.gif' and the full uri is > 'url("C:\Temp\Report/8390677.gif")'.; SystemID:<snip> > > And this error from FOP > [ERROR] Error in XObject : Error while loading image > file:C:/Temp/Report/8390677.gif : class > java.lang.ClassCastException - > java/io/BufferedInputStream incompatible with > java/awt/image/ImageProducer > > Further digging around the internet yielded no other > ideas. Any help, inspiration would be appreciated. > > Thanks, > > IL > > > > > __________________________________ > Do you Yahoo!? > Friends. Fun. Try the all-new Yahoo! Messenger. > http://messenger.yahoo.com/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Trouble adding an image to FO, Ian Lang | Thread | Re: [xsl] Trouble adding an image t, Tim Meals |
[xsl] Trouble adding an image to FO, Ian Lang | Date | Re: [xsl] Trouble adding an image t, Tim Meals |
Month |