Hi, I've noticed that Okular seems to do page scaling using something bad like bilinear. I'm interested in improving this by providing the option to choose (slower) high-quality filters. I'm starting with re-examining the current page drawing code and determining how to re-factor it to account for this, and have a few questions.
1. What does PagePainter::scalePixmapOnImage do, and why? It seems to just copy data from a pixmap to an image. Is this function even relevant? 2. PagePainter::paintCroppedPageOnPainter has a lot of code paths for what one would assume should be a fairly simple operation. Is there a historical reason for its complexity? I see it reimplements the entire thing at least once for when it's not using a backbuffer. 3. PagePainter::paintCroppedPageOnPainter paints on QImage objects which means the software rasteriser will be used. Since presumably nothing is done with those images other than then being displayed, wouldn't it be better to use a QOpenGLPaintDevice? Thanks for any answers. _______________________________________________ Okular-devel mailing list Okular-devel@kde.org https://mail.kde.org/mailman/listinfo/okular-devel