Q:
A possible way to deal with the issue is to adjust the ‘Threshold’ JBIG2 encoder hint parameter:
[/JBIG2 /Threshold 0.6 /SharePages 50] - Compress a monochrome image using lossy JBIG2Decode
compression with the given image threshold and by sharing segments from a specified number
of pages. The threshold is a floating point number in the rage from 0.4 to 0.9. Increasing the threshold
value will decrease the loss of image quality, but may increase the file size. The default value
for threshold is 0.85. "SharePages" parameter can be used to specify the maximum number of
pages sharing a common 'JBIG2Globals' segment stream. Increasing the value of this parameter
improves compression ratio at the expense of memory usage.
For example:
Array hint; // A hint to image encoder to use JBIG2 compression
hint.PushBackName("JBIG2");
hint.PushBackName("Threshold");
hint.PushBackNumber(0.9);
hint.PushBackName("SharePages");
hint.PushBackNumber(10);
produces output that is indistingusable from the input PDF.