I will finally proceed differently… I'll take a position information from the
area tree and use it to add a calculated empty block in my xsl to generate
directly my pdf !



rOnnie974 wrote:
> 
> Hello, it's me again,
> 
> I am back on this work and after several tests, I figured out that my area
> tree has only elements with absolute positioning, left and top offset
> explicitely precized.
> It is boring for me as I cannot work only on my specific block to adjust
> it (padding, height, etc.), I have to manage its offset and also to deal
> with every elements under it.
> 
> Is there a way to do it easily ? Or to generate an area tree with relative
> positioning for all elements ?
> 
> Thanks in advance.
> 
> Ronnie
> 
> 
> Georg Datterl-2 wrote:
>> 
>> Hi Ronnie,
>> 
>> That's only because you have not yet asked questions that need input from
>> the real experts here. :-)
>> 
>> Regards,
>> 
>> 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: rOnnie974 [mailto:[email protected]]
>> Gesendet: Freitag, 5. Februar 2010 13:06
>> An: [email protected]
>> Betreff: Re: AW: AW: AW: AW: Table height issue
>> 
>> 
>> You are my hero.
>> 
>> Thank you very much.
>> 
>> 
>> Georg Datterl-2 wrote:
>>>
>>> Hi Ronnie,
>>>
>>> Basically:
>>> areaTree is the root.
>>> pageSequence is a page sequence from your fo file page is a single
>>> page in your pdf regionBefore is the header regionAfter is the footer
>>> regionBody is the body of the page
>>>
>>> then there's lots of stuff to ignore. To find the block you are
>>> interested in, search for the id. id="XXX" in fo will be translated to
>>> prod-id="XXX".
>>> bpd is block-progression-dimension, which means block height.
>>>
>>> In your code you can use Xpath to read information, but I'd advise you
>>> to trim the document first. If you know all information you need is in
>>> one page-sequence, trim away all other sequences to make xpath way
>>> faster.
>>>
>>> Regards,
>>>
>>> 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: rOnnie974 [mailto:[email protected]]
>>> Gesendet: Freitag, 5. Februar 2010 12:48
>>> An: [email protected]
>>> Betreff: Re: AW: AW: AW: Table height issue
>>>
>>>
>>> I just found xmlindent.com and got a 2656 lines file... Gonna a big
>>> headache%-|
>>>
>>>
>>> Georg Datterl-2 wrote:
>>>>
>>>> Hi Ronnie,
>>>>
>>>> I run the Document object through
>>>>
>>>>     public static String toString(Document document) throws
>>>> TransformerException {
>>>>         StringWriter stringWriter = new StringWriter();
>>>>         StreamResult streamResult = new StreamResult(stringWriter);
>>>>         TransformerFactory transformerFactory =
>>>> TransformerFactory.newInstance();
>>>>         Transformer transformer = transformerFactory.newTransformer();
>>>>         transformer.setOutputProperty(OutputKeys.INDENT, "yes");
>>>>
>>>> transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amo
>>>> u
>>>> nt",
>>>> "2");
>>>>         transformer.setOutputProperty(OutputKeys.METHOD, "xml");
>>>>         transformer.transform(new
>>>> DOMSource(document.getDocumentElement()), streamResult);
>>>>         return stringWriter.toString();
>>>>     }
>>>>
>>>> and copy the resulting String into XMLSpy.
>>>>
>>>> Regards,
>>>>
>>>> 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: rOnnie974 [mailto:[email protected]]
>>>> Gesendet: Freitag, 5. Februar 2010 12:29
>>>> An: [email protected]
>>>> Betreff: Re: AW: AW: Table height issue
>>>>
>>>>
>>>> THANK YOU for your complete answer !
>>>>
>>>> Before you answered me, I made some researchs and succeeded in
>>>> generating an area tree file.
>>>>
>>>> Now I have to understand this file, and, before, to indent it ! FOP
>>>> made a file with the entire code in one line ! xD
>>>>
>>>> Thank you again.
>>>>
>>>>
>>>> Georg Datterl-2 wrote:
>>>>>
>>>>> Hi Ronnie,
>>>>>
>>>>> Basically (and simplified), in my case I have two colums and the
>>>>> shorter columns has to be extended. So I build my table with one
>>>>> block in each column. Each block is marked by an id. Then I
>>>>> serialize my table into a fo file and generate the area tree, an
>>>>> intermediate format between fo and pdf. This format is an xml tree
>>>>> with all the basic informations like page, column and line breaks,
>>>>> size of areas and so on. I search for the marked blocks, get their
>>>>> height and compare. Then I extend the smaller block in my original
>>>>> table and serialize again. Now I can generate the PDF and both
>>>>> columns have the same height.
>>>>>
>>>>> Problems:
>>>>> * I have to generate the area tree for each table. That takes some
>>>>> time.
>>>>> * One of my blocks contains a table, which gives basically
>>>>> unpredictable results if split over more than two pages.
>>>>> * What should happen if there's a page break after one column is
>>>>> already finished? In that case you won't find the block on the
>>>>> second page and extending the block might change the break position
>>>>> and then the calculated block height is incorrect.
>>>>>
>>>>> You should make REALLY sure you REALLY need that feature.
>>>>>
>>>>> http://markmail.org/search/?q=georg.datterl+from%3A%22Georg+Datterl%
>>>>> 2
>>>>> 2
>>>>> +list%3Aorg.apache.xmlgraphics.fop-users+type%3Ausers+date%3A200804-
>>>>> +2
>>>>> +0
>>>>> 1002++table
>>>>>
>>>>> that should give you a list of my postings talking about tables.
>>>>> Read at you own peril. :-)
>>>>>
>>>>> You can get the area tree with this code:
>>>>>
>>>>>             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(foUserAgent);
>>>>>             Result res = new SAXResult(fop.getDefaultHandler());
>>>>>             transformer.transform(source, res);  // source is a
>>>>> StreamSource containing the fo file
>>>>>             return  (org.w3c.dom.Document)domResult.getNode();
>>>>>
>>>>> Hope that helps.
>>>>>
>>>>> 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: rOnnie974 [mailto:[email protected]]
>>>>> Gesendet: Freitag, 5. Februar 2010 11:43
>>>>> An: [email protected]
>>>>> Betreff: Re: AW: Table height issue
>>>>>
>>>>>
>>>>> Thanks for your answer Georg.
>>>>>
>>>>> I did not find the threads you are talking about.
>>>>>
>>>>>> I create the table, parse the area tree and then insert empty
>>>>>> blocks with a calculated height to simulate that.
>>>>> Could you please explain me how to do that ? I am a beginner and do
>>>>> not know what area trees are.
>>>>>
>>>>> Thanks you in advance.
>>>>>
>>>>>
>>>>>
>>>>> Georg Datterl-2 wrote:
>>>>>>
>>>>>> Hi Ronnie,
>>>>>>
>>>>>>> Does not exist an attribute that would say to my table to extend
>>>>>>> it until there is no more available area on the last page ?
>>>>>>
>>>>>> Trust me, there is none. I create the table, parse the area tree
>>>>>> and then insert empty blocks with a calculated height to simulate
>>>>>> that.
>>>>>> You can search the archive for threads I started, many of them deal
>>>>>> with exactly that problem...
>>>>>>
>>>>>> Regards,
>>>>>>
>>>>>> 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: rOnnie974 [mailto:[email protected]]
>>>>>> Gesendet: Freitag, 5. Februar 2010 05:32
>>>>>> An: [email protected]
>>>>>> Betreff: Re: Table height issue
>>>>>>
>>>>>>
>>>>>> Hi,
>>>>>>
>>>>>> Thanks for your answer.
>>>>>>
>>>>>> Unfortunately, as I said, I write directly in XSL FO. It was
>>>>>> simplier for me to have the design I want, but perhaps I made a
>>>>>> mistake.
>>>>>>
>>>>>> Moreover, the height of each quote can change as they can have a
>>>>>> bigger description. Another difficulty is that the document can be
>>>>>> extended on several pages, and the header do not have to be repeated.
>>>>>> So the last page can be different than if it has only one.
>>>>>>
>>>>>> Does not exist an attribute that would say to my table to extend it
>>>>>> until there is no more available area on the last page ?
>>>>>>
>>>>>>
>>>>>> Venkat Reddy-7 wrote:
>>>>>>>
>>>>>>> Hi,
>>>>>>>
>>>>>>> May be, you can acheive this using your xslt file.
>>>>>>> I hope, you are using XSLT + XML to generate XSL:FO file.
>>>>>>> You can check the number of rows under each quote while generating
>>>>>>> the FO file, add the extra empty rows or increase the height of
>>>>>>> the last row when the script finds less no.of rows.
>>>>>>>
>>>>>>> Hope this will help you,
>>>>>>> Venkat.
>>>>>>>
>>>>>>> rOnnie974 wrote:
>>>>>>>> I am using the trunk version of FOP.
>>>>>>>>
>>>>>>>> here is a pdf I generated.
>>>>>>>>
>>>>>>>> https://www.yousendit.com/download/S1VEaUNGaTFoMlVLSkE9PQ
>>>>>>>> (available
>>>>>>>> 7
>>>>>>>> days)
>>>>>>>>
>>>>>>>> I want that the second table can be extended to fill the entire
>>>>>>>> page.
>>>>>>>>
>>>>>>>>
>>>>>>>> Venkat Reddy-7 wrote:
>>>>>>>>
>>>>>>>>> Hi,
>>>>>>>>>
>>>>>>>>> Can you please provide an example doc what you are looking for?
>>>>>>>>> and also mention the version you are using...
>>>>>>>>>
>>>>>>>>> Thanks,
>>>>>>>>> Venkat.
>>>>>>>>>
>>>>>>>>> rOnnie974 wrote:
>>>>>>>>>
>>>>>>>>>> Hello,
>>>>>>>>>>
>>>>>>>>>> I make quote documents by writing directly in XSL-FO with a XML
>>>>>>>>>> behind.
>>>>>>>>>>
>>>>>>>>>> The number of rows is variable from one quote to another, so I
>>>>>>>>>> have to put some blank rows at the end of the table body before
>>>>>>>>>> the footer, so that the table takes the entire page.
>>>>>>>>>>
>>>>>>>>>> How can I make it dynamically ? Or do you see another solution
>>>>>>>>>> to this issue ?
>>>>>>>>>>
>>>>>>>>>> Thanks in advance.
>>>>>>>>>>
>>>>>>>>>> Ronnie Baret
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>> ----------------------------------------------------------------
>>>>>>>>> -
>>>>>>>>> -
>>>>>>>>> -
>>>>>>>>> -
>>>>>>>>> - 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]
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>> --
>>>>>> View this message in context:
>>>>>> http://old.nabble.com/Table-height-issue-tp27451583p27463438.html
>>>>>> Sent from the FOP - Users mailing list archive at Nabble.com.
>>>>>>
>>>>>>
>>>>>> -------------------------------------------------------------------
>>>>>> -
>>>>>> - 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]
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>>> --
>>>>> View this message in context:
>>>>> http://old.nabble.com/Table-height-issue-tp27451583p27466097.html
>>>>> Sent from the FOP - Users mailing list archive at Nabble.com.
>>>>>
>>>>>
>>>>> --------------------------------------------------------------------
>>>>> - 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]
>>>>>
>>>>>
>>>>>
>>>>
>>>> --
>>>> View this message in context:
>>>> http://old.nabble.com/Table-height-issue-tp27451583p27466541.html
>>>> Sent from the FOP - Users mailing list archive at Nabble.com.
>>>>
>>>>
>>>> ---------------------------------------------------------------------
>>>> 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]
>>>>
>>>>
>>>>
>>>
>>> --
>>> View this message in context:
>>> http://old.nabble.com/Table-height-issue-tp27451583p27466728.html
>>> Sent from the FOP - Users mailing list archive at Nabble.com.
>>>
>>>
>>> ---------------------------------------------------------------------
>>> 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]
>>>
>>>
>>>
>> 
>> --
>> View this message in context:
>> http://old.nabble.com/Table-height-issue-tp27451583p27466906.html
>> Sent from the FOP - Users mailing list archive at Nabble.com.
>> 
>> 
>> ---------------------------------------------------------------------
>> 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]
>> 
>> 
>> 
> 
> 

-- 
View this message in context: 
http://old.nabble.com/Table-height-issue-tp27451583p27544315.html
Sent from the FOP - Users mailing list archive at Nabble.com.


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

Reply via email to