Skip to content
  • Eugene Ingerman's avatar
    Add antialiasing to createThumbnailDevice · 2a1987a8
    Eugene Ingerman authored
    Summary:
    1. Added oversampling/antialising to createThumbnailDevice. Interpolation is done using KisTransformWorker with bilinear interpolation. Added parameter that controls oversampling ratio.
    2. Added benchmark for new thumbnail code. Results for 6Kx8K image turned into 640px thumbnail see below. About 2x hit in time for 2x oversampling. Quality with 2x oversampling is much better than no oversampling. 4x oversampling slightly better, but not dramatically. See below.
    3. Changed oversampling for overview widget to 2x.
    4. Fixed caching of oversampled thumbnails.
    5. Fixed up functions calls to createThumbnail.
    
    {F156583}
    No Oversampling
    
    {F156585}
    2x Oversampling
    
    {F156586}
    4x Oversampling
    
    PASS   : KisThumbnailBenchmark::benchmarkCreateThumbnail()
    RESULT : KisThumbnailBenchmark::benchmarkCreateThumbnail():
         161 msecs per iteration (total: 161, iterations: 1)
    PASS   : KisThumbnailBenchmark::benchmarkCreateThumbnailCached()
    RESULT : KisThumbnailBenchmark::bench...
    2a1987a8