Hi, Eugen,

try to look for a minute on the XSL-T 2.0 library "graph2svg", could be found 
on "http://graph2svg.jinak.cz/examples_en.html";. It is pure XSL-T 2.0 from XML 
to SVG (when using two-phase transformation even inline SVG). The source XML 
code of graph2svg looks very similar to Your example code.

Cheers, Stepan

> ------------ Původní zpráva ------------
> Od: gen1986 <cepoi.eu...@gmail.com>
> Předmět: Re: how to extend the rendering part of fop
> Datum: 03.1.2011 20:34:39
> ----------------------------------------
>
> Hi Jeremias,
>
> Thanks for your quick response.
> However I'll give some more informations about what I'm trying to achieve.
>
> A sketch of the template :
>
> ... XSL-FO tags ...
> <fo:instream-foreign-object...
>
> <chart:chart xmlns:c="www...charts..">
>  <c:pie width=".." height="..">
>  <c:title value="Hello Piechart"/>
>  ... some custom tags to retrieve data ...
> </c:pie>
> </chart:chart>
>
> ... XSL-FO tags ...
>
> My elementMapping extension handles those tags and creates my objects
> describing the chart.
>
> 1) Actually I'm extending FONode, should I rather extend
> InstreamForeignObject?
>
> At some point (when the pdf is rendered) I'll use my objects to draw the
> chart to Graphics2D. But I will not create an Image.
>
>
> As you mentioned, it looks a lot like what you are doing here :
> [3]
> http://barcode4j.cvs.sourceforge.net/viewvc/barcode4j/barcode4j/src/xmlgraphics-commons/java/org/krysalis/barcode4j/image/loader/ImageConverterBarcode2G2D.java?revision=1.1&view=markup
>
> So tell me if I'm wrong :
> I must implement Graphics2DImagePainter and AbstractImageConverter, I'll
> draw there my chart to the given Graphics2D. XMLGraphics will take care of
> integrating it into the doc (being created by fop).
>
> 2) I must also extend AbstractImage, but for the moment I don't really
> understand what code to write there.
>
> To register the converter programatically :
>                 FopFactory factory = FopFactory.newInstance();
>               
> factory.getImageManager().getRegistry().registerConverter(myG2DConverter);
>
> That sounds ok.
> 3) But I don't understand how to make the link between my objects and the
> registred converter.
>
>
> Thanks again.
>
> Eugen
>
>
>
> Jeremias Maerki-2 wrote:
> >
> > Hi Eugen
> >
> > Assuming you're using Apache FOP 1.0 or later, I would suggest to you to
> > write a set of plug-ins for the Apache XML Graphics Commons image loader
> > framework. The documentation for that is found here:
> > http://xmlgraphics.apache.org/commons/image-loader.html
> >
> > That's our new infrastructure for handling images. And your charting XML
> > is nothing other than an image in XML. A good example of such a set of
> > plug-ins can be found in Barcode4J:
> >
> http://barcode4j.cvs.sourceforge.net/viewvc/barcode4j/barcode4j/src/xmlgraphics-commons/
> >
> > You can see multiple ImageConverter implementations there. One converts
> > [1] a generic XML document into an ImageBarcode [2]. And you would
> > create something like an ImageChart. Furthermore, I'd go the Java2D
> > route (Graphics2D), so you'd add an ImageConverter which takes an
> > ImageChart and produces an ImageGraphics2D [3] (The code in there
> > basically paints your chart against a Graphics2D object). The latter can
> > be processed by FOP's PDF support to create high-quality vector graphics
> > without you having to learn about PDF specifics. The nice side-effect is
> > that it won't only work for PDF, but also for all other output formats
> > supported by FOP.
> >
> > [1]
> >
> http://barcode4j.cvs.sourceforge.net/viewvc/barcode4j/barcode4j/src/xmlgraphics-commons/java/org/krysalis/barcode4j/image/loader/ImageConverterBarcodeXML2Barcode.java?view=markup
> > [2]
> >
> http://barcode4j.cvs.sourceforge.net/viewvc/barcode4j/barcode4j/src/xmlgraphics-commons/java/org/krysalis/barcode4j/image/loader/ImageBarcode.java?view=markup
> > [3]
> >
> http://barcode4j.cvs.sourceforge.net/viewvc/barcode4j/barcode4j/src/xmlgraphics-commons/java/org/krysalis/barcode4j/image/loader/ImageConverterBarcode2G2D.java?view=markup
> >
> > If you don't plan to put charts in external files (i.e. you use only
> > fo:instream-foreign-object), you can omit the Preloader, LoaderFactory
> > and Loader, I think. The image converters should be enough.
> >
> > If there's something that our PDFGraphics2D can't handle, we can take a
> > closer look at this again.
> >
> > HTH
> >
> > On 03.01.2011 16:55:32 gen1986 wrote:
> >>
> >> Hi,
> >>
> >> I'm working on a project where I have to extend FO to support custom tags
> >> for drawing charts.
> >> For doing so I've extended ElementMapping and created my custom
> >> ContentHandlerFactory, etc.
> >> Until here it's ok. I can get all the infos about the chart from the
> >> xsl-fo
> >> template.
> >>
> >> My problem is that I want now to write the chart as a stream to the PDF,
> >> but
> >> I don't know which fop classes to use for doing it the right way. Any
> >> help
> >> is welcome.
> >>
> >> If my problem isn't clear enough I can give more explanations, just let
> >> me
> >> know ;)
> >>
> >> Thanks,
> >>
> >> Eugen
> >> --
> >> View this message in context:
> >>
> http://old.nabble.com/how-to-extend-the-rendering-part-of-fop-tp30579066p30579066.html
> >> Sent from the FOP - Users mailing list archive at Nabble.com.
> >
> >
> > Jeremias Maerki
> >
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
> > For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org
> >
> >
> >
>
> --
> View this message in context:
> http://old.nabble.com/how-to-extend-the-rendering-part-of-fop-tp30579066p30580808.html
> Sent from the FOP - Users mailing list archive at Nabble.com.
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
> For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org
>
>
>
>

---------------------------------------------------------------------
To unsubscribe, e-mail: fop-users-unsubscr...@xmlgraphics.apache.org
For additional commands, e-mail: fop-users-h...@xmlgraphics.apache.org

Reply via email to