diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/fitz/draw-device.c | 2 | ||||
-rw-r--r-- | source/tools/mudraw.c | 7 |
2 files changed, 8 insertions, 1 deletions
diff --git a/source/fitz/draw-device.c b/source/fitz/draw-device.c index 260ca59e..836fc4df 100644 --- a/source/fitz/draw-device.c +++ b/source/fitz/draw-device.c @@ -536,7 +536,7 @@ push_group_for_separations(fz_context *ctx, fz_draw_device *dev, const fz_color_ } /* Not needed */ - if (clone == NULL && dev->proof_cs == NULL) + if (clone == NULL && dev->proof_cs == NULL && fz_colorspace_n(ctx, dev->stack[0].dest->colorspace) == 4) { dev->resolve_spots = 0; return &dev->stack[0]; diff --git a/source/tools/mudraw.c b/source/tools/mudraw.c index 6382e95c..d3cef7a2 100644 --- a/source/tools/mudraw.c +++ b/source/tools/mudraw.c @@ -1042,6 +1042,13 @@ static void drawpage(fz_context *ctx, fz_document *doc, int pagenum) for (i = 0; i < n; i++) fz_set_separation_behavior(ctx, seps, i, FZ_SEPARATION_COMPOSITE); } + else + { + /* If we are doing spot rendering (or overprint simulation) + * then we need (at least) an empty sep object to force the + * overprint simulation in the draw device. */ + seps = fz_new_separations(ctx, 0); + } } fz_catch(ctx) { |