[poppler] Patch proposal: Implementation for real gouraud shaded triangles
Christian Feuersaenger
ludewich at users.sourceforge.net
Thu Jul 15 12:24:49 PDT 2010
Dear poppler developers,
hereby I propose a new patch for a high quality, fast gouraud shader for
triangle shadings.
The patch provides
- scalable triangle shadings (in contrast to the old approach),
- correct shading, no approximation using flat triangles,
- greatly (!) improved rendering speed,
- support for opacity (in contrast to the previous approach).
This patch is relative to the master branch,
git show poppler-0.14.0-91-g31ac578 .
It is unrelated to my previous patch proposals concerning shadings; the
other patch proposal (my mail several weeks ago) is still important and
relevant. The patch in this mail is independent and does not include my
previous patch proposals.
I tested the new patch with pdftoppm and with the xpdf-poppler fork of
Rogerio Brito; it appears to work reliable. I tested
- matrix shadings and triangle patch shadings (Types 4 and 5),
- degenerated triangles,
- clipping,
- opacity,
- RGB color spaces.
The implementation now supports these shadings on a display driver level
and is implemented directly in the splash device (using scanline sweeps).
I've been defensive: I have no test cases for other color spaces and I
have no test data for non-parametric shadings. Consequently, I disabled
the shader for these cases; it will fall back to the existing solutions
(approximate shading by means of many flat triangles).
I hope you find my patch proposal useful. I believe it is worthy of
being part of libpoppler.
Thanks,
Christian
-------------- next part --------------
A non-text attachment was scrubbed...
Name: poppler_realgouraudshadingtype.patch
Type: text/x-patch
Size: 22889 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/poppler/attachments/20100715/c29164c1/attachment.bin>
More information about the poppler
mailing list