diff options
| author | bulia byak <buliabyak@gmail.com> | 2006-07-29 17:07:59 +0000 |
|---|---|---|
| committer | buliabyak <buliabyak@users.sourceforge.net> | 2006-07-29 17:07:59 +0000 |
| commit | d06ccf5bc28b1b6b3ecd7d92721d978b72929034 (patch) | |
| tree | b1536d67e420c88fa81cae649e9da9b105f49920 /src/libnr/nr-pixblock-pattern.cpp | |
| parent | Add Miklos's new Cairo PDF rendering (diff) | |
| download | inkscape-d06ccf5bc28b1b6b3ecd7d92721d978b72929034.tar.gz inkscape-d06ccf5bc28b1b6b3ecd7d92721d978b72929034.zip | |
patch for rendering quality and speed from Jasper van de Gronde
(bzr r1503)
Diffstat (limited to 'src/libnr/nr-pixblock-pattern.cpp')
| -rw-r--r-- | src/libnr/nr-pixblock-pattern.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/libnr/nr-pixblock-pattern.cpp b/src/libnr/nr-pixblock-pattern.cpp index b4e25638f..771786584 100644 --- a/src/libnr/nr-pixblock-pattern.cpp +++ b/src/libnr/nr-pixblock-pattern.cpp @@ -52,28 +52,28 @@ nr_pixblock_render_gray_noise (NRPixBlock *pb, NRPixBlock *mask) v = v ^ noise[seed]; switch (pb->mode) { case NR_PIXBLOCK_MODE_A8: - d[0] = (65025 - (255 - m[0]) * (255 - d[0]) + 127) / 255; + d[0] = NR_COMPOSEA_111(m[0], d[0]); break; case NR_PIXBLOCK_MODE_R8G8B8: - d[0] = NR_COMPOSEN11 (v, m[0], d[0]); - d[1] = NR_COMPOSEN11 (v, m[0], d[1]); - d[2] = NR_COMPOSEN11 (v, m[0], d[2]); + d[0] = NR_COMPOSEN11_1111 (v, m[0], d[0]); + d[1] = NR_COMPOSEN11_1111 (v, m[0], d[1]); + d[2] = NR_COMPOSEN11_1111 (v, m[0], d[2]); break; case NR_PIXBLOCK_MODE_R8G8B8A8N: if (m[0] != 0) { unsigned int ca; - ca = NR_A7 (m[0], d[3]); - d[0] = NR_COMPOSENNN_A7 (v, m[0], d[0], d[3], ca); - d[1] = NR_COMPOSENNN_A7 (v, m[0], d[1], d[3], ca); - d[2] = NR_COMPOSENNN_A7 (v, m[0], d[2], d[3], ca); - d[3] = (ca + 127) / 255; + ca = NR_COMPOSEA_112(m[0], d[3]); + d[0] = NR_COMPOSENNN_111121 (v, m[0], d[0], d[3], ca); + d[1] = NR_COMPOSENNN_111121 (v, m[0], d[1], d[3], ca); + d[2] = NR_COMPOSENNN_111121 (v, m[0], d[2], d[3], ca); + d[3] = NR_NORMALIZE_21(ca); } break; case NR_PIXBLOCK_MODE_R8G8B8A8P: - d[0] = NR_COMPOSENPP (v, m[0], d[0], d[3]); - d[1] = NR_COMPOSENPP (v, m[0], d[1], d[3]); - d[2] = NR_COMPOSENPP (v, m[0], d[2], d[3]); - d[3] = (NR_A7 (d[3], m[0]) + 127) / 255; + d[0] = NR_COMPOSENPP_1111 (v, m[0], d[0]); + d[1] = NR_COMPOSENPP_1111 (v, m[0], d[1]); + d[2] = NR_COMPOSENPP_1111 (v, m[0], d[2]); + d[3] = NR_COMPOSEA_111(d[3], m[0]); break; default: break; |
