Hi Jeremias,

Thanks. Now I'm more confused than before. As you know, I generate an area 
tree, then manipulate my fo file and then generate the final PDF. Now I found a 
case, where the AT puts four table rows on the second page but the final PDF 
has 5 rows. So the values I calculate from the AT don't work any more. Using 
the batch file now gives me 5 rows in AT and PDF. So I guess it's not a fop 
fault. Checking my code, I see I am using mimicRenderer(). Can you see any 
reason why I only get four rows here

            FopFactory fopFactory = FopFactory.newInstance();
                fopFactory.setUserConfig(new File("fonts/fop.xconf"));
            FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
            SAXTransformerFactory mpFactory = 
(SAXTransformerFactory)SAXTransformerFactory.newInstance();
            Transformer transformer =  mpFactory.newTransformer();
            TransformerHandler handler = mpFactory.newTransformerHandler();
            DOMResult domResult = new DOMResult();
            handler.setResult(domResult);

            org.apache.fop.render.Renderer targetRenderer =
            foUserAgent.getRendererFactory().createRenderer(
                            foUserAgent, MimeConstants.MIME_PDF);

            XMLRenderer renderer = new XMLRenderer();
            renderer.mimicRenderer(targetRenderer);
            renderer.setContentHandler(handler);
            renderer.setUserAgent(foUserAgent);

            foUserAgent.setRendererOverride(renderer);
            
            Fop fop = fopFactory.newFop(MimeConstants.MIME_FOP_AREA_TREE, 
foUserAgent);
            Result res = new SAXResult(fop.getDefaultHandler());
            transformer.transform(source, res);
            return  (org.w3c.dom.Document)domResult.getNode();

but five rows here

                FopFactory fopFactory = FopFactory.newInstance();
                fopFactory.setUserConfig(new File("fonts/fop.xconf"));
            FOUserAgent foUserAgent = fopFactory.newFOUserAgent();
            foUserAgent.setAuthor("P3");
            foUserAgent.setCreator(pdfTarget.getAbsolutePath());
            out = new FileOutputStream(pdfTarget);
            out = new BufferedOutputStream(out);
            Fop fop = fopFactory.newFop(MimeConstants.MIME_PDF, foUserAgent, 
out);
            TransformerFactory factory = TransformerFactory.newInstance();
            Transformer transformer = factory.newTransformer(); // identity 
transformer
            Source src = new StreamSource(target);
            Result res = new SAXResult(fop.getDefaultHandler());
            transformer.transform(src, res);

Mit freundlichen Grüßen
 
Georg Datterl
 
------ Kontakt ------
 
Georg Datterl
 
Geneon media solutions gmbh
Gutenstetter Straße 8a
90449 Nürnberg
 
HRB Nürnberg: 17193
Geschäftsführer: Yong-Harry Steiert 

Tel.: 0911/36 78 88 - 26
Fax: 0911/36 78 88 - 20
 
www.geneon.de
 
Weitere Mitglieder der Willmy MediaGroup:
 
IRS Integrated Realization Services GmbH:    www.irs-nbg.de 
Willmy PrintMedia GmbH:                            www.willmy.de
Willmy Consult & Content GmbH:                 www.willmycc.de 
-----Ursprüngliche Nachricht-----
Von: Jeremias Maerki [mailto:[email protected]] 
Gesendet: Donnerstag, 30. Juli 2009 13:05
An: [email protected]
Betreff: Re: configuration difference between -pdf and -at?

Georg,
by default, FOP uses the configuration under the area tree renderer's own MIME 
type (application/X-fop-areatree). You need to tell the area tree renderer to 
mimic the PDF renderer by specifying:
-at application/pdf ifbug.xml

Then, it'll take the PDF configuration. Other people may need to produce AT XML 
for AFP or for PostScript where the configuration can be different, so we can't 
just assume PDF is the right one. It has to be explicit.

This is explained in http://xmlgraphics.apache.org/fop/0.95/intermediate.html
but maybe not well enough.

On 30.07.2009 12:50:04 Georg Datterl wrote:
> Hi,
> 
> When I generate a pdf by calling
> 
> fop.bat -c conf/fop.xconf -fo ifbug.fo -pdf ifbug.pdf
> 
> everything works fine. But trying to generate the area tree from a 
> similar call
> 
> fop.bat -c conf/fop.xconf -fo ifbug.fo -at ifbug.xml
> 
> gives me warnings about fonts not found. Obviously the first call finds the 
> configuration file and can read the fonts configured in 
> fop/renderers/renderer[mime=application/pdf]/fonts. Do I need a different 
> mime type for the area tree? 
> 
> Regards,
>  
> Georg Datterl



Jeremias Maerki


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to