> Note: this is still in progress, input in the code is welcome. Needs 
> documenting formats, testing. So all those people interested in images 
> should get involved.


> Threading

Thanks for thinking about this!


> Caches
> ------
> All images are in a common cache regardless of context. To limit the size
> of the cache the LRU image is removed to keep the amount of memory used
> low. Each image can supply the amount of data held in memory.

Just as an idea: Have you looked at Avalon Excalibur's caching package?
Pretty good stuff.

By the way: What's the current agreement whether to use Avalon or not? I
mean, we're already using LogKit (which is cool). On the other side, if
we moved to the newer org.apache.avalon.framework.logger.Logger
interface we would be more Logging framework independent (which was
something a few people wanted). And considering that Cocoon is one of
FOP's biggest customers and that they're using Avalon, both, FOP and
Cocoon, could profit from the synergies. Currently, some interesting
stuff is being moved from Cocoon to Avalon Excalibur that FOP might also
profit from. On the other side: Avalon is lean but it brings some more
jars to include in the distribution (which some people don't like) and
takes some time to understand to really profit from.

Hey, don't flame me because I have expressed this. I'm just dreaming
aloud. :-) I mean, we're using Avalon here at Outline and we're starting
to get good at it. It helps us very much in making better code.


> Rendering
> ---------
> Different renderers need to have the information in different forms.
> PDF:
> original data - JPG, EPS
> bitmap - gif, tiff, bmp, png
> other - SVG
> PS:
> bitmap - JPG, gif, tiff, bmp, png
> other - SVG

PS Level 3 supports DCT encoding, so JPEG images could (one day) also be
included as original data.

EPS might also be directly embedded given the PostScript Levels are

I'll have a look at it (real soon now).

> awt:
> bitmap - JPG, gif, tiff, bmp, png
> other - SVG
> The renderer uses the url to retrieve the image from the ImageFactory and
> then load the required data depending on the image mime type. If the
> renderer can insert the image into the document and use that data for all
> future references of the same image then it can cache the reference in the
> renderer and the image can be released from the image cache.

Jeremias Märki


Postfach 3954 - Rhynauerstr. 15 - CH-6002 Luzern
Fon +41 41 317 20 20 - Fax +41 41 317 20 29
Internet http://www.outline.ch

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

Reply via email to