[poppler] Image optimization

Jeff Muizelaar jeff at infidigm.net
Sat May 21 20:40:10 PDT 2005


On Sat, May 21, 2005 at 08:36:57PM -0400, Leonard Rosenthol wrote:
>         Splash supports transparency - in terms of maintaining an alpha 
> channel for such elements.  It doesn't "flatten" them, but then I don't 
> believe Cairo does either.

I don't quite understand what you mean. Can you draw semi-transparent
circle with splash?

> 
>         Shadings are actually handled UP the chain in Xpdf - so that 
> NEIHER Cairo nor Splash will see native shading operations...They are 
> "dissected" down in the bowels of Xpdf and converted to simple 
> primitives.  Same with patterns.

The eventual goal is to change this xpdf code into a set of support
functions that the backends can call if they don't support
patterns/shading natively. This will allow us to use cairo's support for
shading and patterns.

> 
> >It also is not very suited to hardware acceleration.
> 
>         Why?

For example:
The way splash does images is by doing the compositing pixel by pixel
instead of blitting a buffer. 

>         I suspect that a good chunk of the raster image handling is the 
> same and basic font/character support (the stuff that happens before 
> calling into FT).

For the image handling see Kristian's post elsewhere in this thread.

The cairo backend draws by string, whereas the splash backend draws by
character. So doing code sharing is harder without changing splash to
draw by string as well.

-Jeff


More information about the poppler mailing list