<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED --- - Add option to manually disable bilinear filtering"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=68360#c35">Comment # 35</a>
              on <a class="bz_bug_link 
          bz_status_REOPENED "
   title="REOPENED --- - Add option to manually disable bilinear filtering"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=68360">bug 68360</a>
              from <span class="vcard"><a class="email" href="mailto:dr.hyder@gmail.com" title="Charles Hyder <dr.hyder@gmail.com>"> <span class="fn">Charles Hyder</span></a>
</span></b>
        <pre>Created <span class=""><a href="attachment.cgi?id=100363" name="attach_100363" title="The git patch against master">attachment 100363</a> <a href="attachment.cgi?id=100363&action=edit" title="The git patch against master">[details]</a></span> <a href='page.cgi?id=splinter.html&bug=68360&attachment=100363'>[review]</a>
The git patch against master

Sorry for inactivity, just recently got time to actually produce the patch.

In short: all this "forceImageInterpolation" stuff has been removed altogether.
What is added is

1) integer math version of bilinear scaling algorithms, and the change of the
code in SplashOutputDev to use the latter instead of the former floating point
math version;

2) new code in drawImage() and isImageInterpolationRequired() that change how
the images are drawn at native resolutions and their multiples (other
resolutions are unaffected). Native rendering resolution of an image is image's
own resolution, so that an image n x m pixels occupies a rectangle of n x m
pixels on the raster output device when rendered at native resolution.

3) a few explicit type casts to reduce the number of compiler warning; this is
irrelevant to the current bug, really.

The main effect of 1) is that the code should be faster (to test speed use
pdftoppm -r 450 in the example below).

The main effect of 2) can be observed by preparing, say, a bitonal TIFF (CCITT
group 4 compression) image at, say, 300dpi, embedding it in a PDF (I use
Acrobat's import function, but for those without Acrobat there's a tool called
c42pdf which can embed such images without re-encoding), then running pdftoppm 
-r 300 file.pdf (the new, patched version) on the PDF. What you get is a PBM
file which IDENTICAL to the bitonal image you started with. Furthermore, when
running pdftoppm -r 600 you get each original pixel becoming now a block of 2x2
pixels, and similarly at all resolutions that are multiples of 300dpi. At all
other resolutions the rendering behavior has been left as it was.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>