- From: Mike Haarman <mhaarman@infinitecampus.org>
- Date: Tue, 4 Mar 2003 11:41:25 -0600
- To: "Jan Koppeel" <jan.koppeel@web.de>, <www-xsl-fo@w3.org>
Jan, This question is better addressed to the FOP users list at: fop-user@xml.apache.org But I suspect that other processors behave in a similar manner in this regard. Ending a page-sequence and beginning another allows FOP to garbage collect and free memory. You should be able to process X number of records, kick off the current page-sequence and begin another with the initial-page-number property set. I've built 400-page documents in this manner without increasing heap. Perhaps you can break this out with each new list element. HTH, Mike ----- Original Message ----- From: "Jan Koppeel" <jan.koppeel@web.de> To: <www-xsl-fo@w3.org> Sent: Tuesday, March 04, 2003 9:21 AM Subject: Large XML-files > > I'm trying to create pdf-files out of large xml-files by using FOP. The largest xml-file is about 4 MB. As you can imagine I get an OutOfMemory-Error. Increasing the JVM memory size is no solution because the machine starts swapping. > > Can you help me to create page sequences with about 100 (more or less) items? > > my XML-files look like this: > > <data> > <head> > .... some informations > </head> > <list nr="1"> > <item1> > <subitem1/> > <subitem2/> > <subitem3/> > <subitem4/> > </item1> > <item2> > ... > </item2> > ... > about 19000 items more > </list> > <list nr="2"> > ... like above > </list> > ... > </data> > > I want the pages look like this: > > ------------------------------- > headerinformation page > ------------------------------- > Nr: 1 > subitem1 subitem2 ... (for each item) > subitem1 subitem2 ... > subitem1 subitem2 ... > > Nr: 2 > subitem1 subitem2 ... (for each item) > > Currently I'm using this xsl-file: > > <xsl:template match="data"> > <fo:root xmlns:fo="http://www.w3.org/1999/XSL/Format"> > <fo:layout-master-set> > <fo:simple-page-master master-name="all" > page-height="29.7cm" page-width="21cm" > margin-top="2cm" margin-bottom="2cm" > margin-left="2cm" margin-right="2cm"> > <fo:region-body margin-top="2.5cm" margin-bottom="0cm"/> > <fo:region-before extent="2.5cm"/> > </fo:simple-page-master> > </fo:layout-master-set> > <fo:page-sequence master-reference="all" format="1"> > <fo:static-content flow-name="xsl-region-before"> > <fo:block text-align="start" font-size="10pt" font-family="sans-serif" line-height="1em + 2pt"> > <xsl:apply-templates select="head"/> > </fo:block> > </fo:static-content> > <fo:flow flow-name="xsl-region-body"> > <xsl:apply-templates select="list"/> > </fo:flow> > </fo:page-sequence> > </fo:root> > </xsl:template> > > The templates "head" and "list" are defined in separate sections. > ____________________________________________________________________________ __ > Sie haben mehr zu sagen als in eine SMS passt? Mit WEB.DE FreeMail ist > das jetzt kein Problem mehr! http://freemail.web.de/features/?mc=021182 > >
Received on Tuesday, 4 March 2003 12:40:16 UTC