Greetings to the list,

 

I am using FOP version 0 .94 under Java 1.6 update 6.

 

I am using FOP to create a PDF dictionary from a source XML file.  There are
only 12,000 entries in this dictionary.  The tricky bit is that the words
being defined are in Ancient Egyptian Hieroglyphs.  Each word (or phrase) is
stored in SVG format.  So ultimately my FO document contains 12,000
instream-foreign-object tags each containing SVG.  This configuration alone
taxes the 1 GB memory limit I am able to give to my virtual machine (a known
issue with running Java under Windows).

 

Each dictionary entry would like to contain zero or more alternative words
and phrases (think thesaurus).  This increases the number of
instream-foreign-object tags containing SVG to the order of 30,000 or
40,000.  Even breaking this up into individual chapters I have a very hard
time rendering these documents.  They consume vast amounts of memory and
bring my system to a halt even under Linux.

 

So I was wondering if anyone had any suggestions on how I could optimize my
FO document and use of SVG.  Since all of the "see also" words and phrases
can be found elsewhere in my document is there a way to generate a PDF-layer
reference to content located at another part of a document? I am thinking of
something analogous to symbols in Flash; a way of having FOP render the SVG
word or phrase once and have it instruct the PDF to reuse that content in
many locations.

 

Converting these to images is less than ideal since ancient Egyptian
hieroglyphs contain a lot of fine detail that would be lost or blurred if
rasterized.  One of my main reasons for choosing this approach was that I
knew FOP would preserve the hieroglyphs in vector format.

 

For what it is worth without the SVG content FOP runs fantastically.  So
this seems to be due to the sheer volume of vector data added to the
rendering process by the inclusion of all of these SVG elements.

 

Since this is my first time ever mailing and FOP related mailing list when
they take this opportunity to say that I have been using FOP for over seven
years now and have enjoyed every minute of it.  This is a fantastic product
and I think the improvements in this new branch in performance and API are
nothing less than spectacular!  Thank you to everyone contributing to this
project.

 

Ted young

Reply via email to