diff options
| author | bulia byak <buliabyak@gmail.com> | 2006-10-20 08:33:17 +0000 |
|---|---|---|
| committer | buliabyak <buliabyak@users.sourceforge.net> | 2006-10-20 08:33:17 +0000 |
| commit | 4dc8a449f3e61b8bafa427e0420038b0775f63a8 (patch) | |
| tree | d879c70dc0c888ef142877c5f9b0549b34f1597e /src | |
| parent | fix the erroneous double opacity on filtered objects (diff) | |
| download | inkscape-4dc8a449f3e61b8bafa427e0420038b0775f63a8.tar.gz inkscape-4dc8a449f3e61b8bafa427e0420038b0775f63a8.zip | |
more correct double opacity fix: do not multiply by opacity if item->render_opacity, i.e. the opacity was already applied during render
(bzr r1815)
Diffstat (limited to 'src')
| -rw-r--r-- | src/display/nr-arena-item.cpp | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/display/nr-arena-item.cpp b/src/display/nr-arena-item.cpp index a46ad0cc0..12312c251 100644 --- a/src/display/nr-arena-item.cpp +++ b/src/display/nr-arena-item.cpp @@ -509,10 +509,9 @@ nr_arena_item_invoke_render (NRArenaItem *item, NRRectL const *area, /* This pointer wouldn't be valid outside this block, so clear it */ item->background_pb = NULL; } else { - if (item->filter && !outline) { + if (item->render_opacity) { // opacity was already rendered in, just copy to dpb here nr_blit_pixblock_pixblock(dpb, &ipb); - } else { - /* Opacity only */ + } else { // copy while multiplying by opacity nr_blit_pixblock_pixblock_alpha (dpb, &ipb, item->opacity); } } |
