This is how it used to work:

o anywhere in FOP formatting

- load image, if same URL was not loaded before and find out the space
needed for the image.
- keep list of processed files.

o PDF Renderer:

- generate XObject, if XObject of same URL was not generated before. Delete
image buffer: partial image cleanup only?
- keep list of generated XObjects.
- reference/reuse the XObject as often as required in content streams,
scaled to different sizes

A simple design:

o FOP formatting determines space needed = partial reading of image files
o Renderers control image processing according to their needs. The PDF
renderer does not need any caching: maximum 1 image in memory at a time.
- additional attributes for external-graphic might be helpful, e.g.
resolution, color model
- Isolation image processing in renderers will solve SVG caching more

Hansuli Anderegg

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

Reply via email to