--- inkscape-0.92.3-orig/src/extension/internal/cairo-renderer.cpp 2018-03-12 05:38:09.000000000 +0900 +++ inkscape-0.92.3/src/extension/internal/cairo-renderer.cpp 2018-05-28 20:21:09.911944866 +0900 @@ -528,7 +528,9 @@ if (pb) { //TEST(gdk_pixbuf_save( pb, "bitmap.png", "png", NULL, NULL )); + ctx->pushState(); ctx->renderImage(pb.get(), t, item->style); + ctx->popState(); } g_slist_free (items); } --- inkscape-0.92.3-orig/src/helper/pixbuf-ops.cpp 2018-03-12 05:38:09.000000000 +0900 +++ inkscape-0.92.3/src/helper/pixbuf-ops.cpp 2018-05-28 20:20:07.684853500 +0900 @@ -37,6 +37,7 @@ // TODO look for copy-n-paste duplication of this function: /** * Hide all items that are not listed in list, recursively, skipping groups and defs. + * Also set the opacity of any encountered items to 1.0 */ static void hide_other_items_recursively(SPObject *o, GSList *list, unsigned dkey) { @@ -51,6 +52,17 @@ item->invoke_hide(dkey); } + // reset opacity to 1.0 + if ( item ) { + SPItemView *v = item->display; + while (v != NULL) { + if (v->key == dkey) { + v->arenaitem->setOpacity(1.0); + } + v = v->next; + } + } + // recurse if (!g_slist_find(list, o)) { for ( SPObject *child = o->firstChild() ; child; child = child->getNext() ) {