summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--base/gdevp14.c6
-rw-r--r--base/gdevp14.h1
2 files changed, 7 insertions, 0 deletions
diff --git a/base/gdevp14.c b/base/gdevp14.c
index 400a106f6..d0d7aefc6 100644
--- a/base/gdevp14.c
+++ b/base/gdevp14.c
@@ -5856,6 +5856,7 @@ pdf14_recreate_device(gs_memory_t *mem, gs_gstate * pgs,
pdev->is_planar = true;
else
pdev->is_planar = target->is_planar;
+ pdev->interpolate_threshold = dev_proc(target, dev_spec_op)(target, gxdso_interpolate_threshold, NULL, 0);
pdev->procs = dev_proto.procs;
if (deep) {
@@ -8537,6 +8538,8 @@ pdf14_dev_spec_op(gx_device *pdev, int dev_spec_op,
rc_decrement_only(tdev, "pdf14_dev_spec_op");
return 0;
}
+ if (dev_spec_op == gxdso_interpolate_threshold)
+ return p14dev->interpolate_threshold;
return dev_proc(p14dev->target, dev_spec_op)(p14dev->target, dev_spec_op, data, size);
}
@@ -8624,6 +8627,7 @@ gs_pdf14_device_push(gs_memory_t *mem, gs_gstate * pgs,
p14dev->is_planar = true;
else
p14dev->is_planar = target->is_planar;
+ p14dev->interpolate_threshold = dev_proc(target, dev_spec_op)(target, gxdso_interpolate_threshold, NULL, 0);
p14dev->alpha = 1.0;
p14dev->shape = 1.0;
@@ -10018,6 +10022,7 @@ pdf14_create_clist_device(gs_memory_t *mem, gs_gstate * pgs,
pdev->is_planar = true;
else
pdev->is_planar = target->is_planar;
+ pdev->interpolate_threshold = dev_proc(target, dev_spec_op)(target, gxdso_interpolate_threshold, NULL, 0);
pdev->op_state = pgs->is_fill_color ? PDF14_OP_STATE_FILL : PDF14_OP_STATE_NONE;
@@ -10163,6 +10168,7 @@ pdf14_recreate_clist_device(gs_memory_t *mem, gs_gstate * pgs,
pdev->is_planar = true;
else
pdev->is_planar = target->is_planar;
+ pdev->interpolate_threshold = dev_proc(target, dev_spec_op)(target, gxdso_interpolate_threshold, NULL, 0);
pdev->color_info.separable_and_linear = GX_CINFO_SEP_LIN_STANDARD;
gx_device_fill_in_procs((gx_device *)pdev);
diff --git a/base/gdevp14.h b/base/gdevp14.h
index 77c36797f..839a6b534 100644
--- a/base/gdevp14.h
+++ b/base/gdevp14.h
@@ -264,6 +264,7 @@ typedef struct pdf14_device_s {
const gx_color_map_procs *(*save_get_cmap_procs)(const gs_gstate *,
const gx_device *);
gx_device_color_info saved_target_color_info;
+ int interpolate_threshold;
dev_proc_encode_color(*saved_target_encode_color);
dev_proc_decode_color(*saved_target_decode_color);
dev_proc_get_color_mapping_procs(*saved_target_get_color_mapping_procs);