summaryrefslogtreecommitdiff
path: root/demos
diff options
context:
space:
mode:
authorRobin Watts <Robin.Watts@artifex.com>2022-01-06 16:20:10 +0000
committerRobin Watts <Robin.Watts@artifex.com>2022-01-06 17:06:33 +0000
commitc0fb721e5341716daba291838467fc01ea7fba6c (patch)
tree387a0d3c56f0b5b683109398498ed8f8d51c8353 /demos
parent0d5d7852f1dfee64aade1ff31eebf7427841d531 (diff)
downloadghostpdl-c0fb721e5341716daba291838467fc01ea7fba6c.tar.gz
Fix clist vs pagemode difference due to interpolation threshold.
When rendering tests_private/comparefiles/Bug692568.pdf at 300dpi to pbmraw, the image in the top right differs between clist and page mode. This file has a pattern, that contains an interpolated image, with a softmask. When rendering the image, the code has to decide whether to interpolate or not. As part of this decision, it calls a dev_spec_op to get the interpolation_threshold. In both page and clist mode, that call ends up at the pbmraw device where gx_default_dev_spec_op handles that dev_spec_op. In page mode the interpolation threshold is set to 4 as we have 1 component and less than 15 gray values (just 1). In clist mode, because of the presence of a softmask, the device has had the number of gray values reset to 255 while the clist device is in effect. This returns an interpolation threshold value of 0. Thus page mode does not interpolate, but clist does, causing the difference. The fix, implemented here, is to remember the interpolation threshold when the clist is created and to use that. Now neither clist nor page mode interpolate.
Diffstat (limited to 'demos')
0 files changed, 0 insertions, 0 deletions