Hi,

Calibre builds are irreproducible, various png icons differ slightly
between builds [1]. I know where the issue occurs, but I'm at a loss where
the fix should be applied. We have Qt experts and enthusiasts in Fedora,
so I thought I'd post here…

Icons are rendered [2] using the following code:
    img = QImage(path).scaled(int(width), int(height),
                              Qt.AspectRatioMode.IgnoreAspectRatio,
                              Qt.TransformationMode.SmoothTransformation)
    img.save(dest)

With python3-pyqt6-6.8.0-0.1.fc42.x86_64, we get a difference in how the
icons are rendered:

    calibre-7.20.0-1.fc42.x86_64
        modified-S.5........ /usr/share/icons/hicolor/16x16/apps/calibre-gui.png
        modified-S.5........ 
/usr/share/icons/hicolor/32x32/apps/calibre-ebook-edit.png
        modified-S.5........ /usr/share/icons/hicolor/32x32/apps/calibre-gui.png
        modified-S.5........ 
/usr/share/icons/hicolor/32x32/apps/calibre-viewer.png
        ...

There are some tiny differences in shading of some pixels. The difference
is not discernible visually for me. [1] has example icons attached.

Is this a bug in Qt and implementation of QImage.scaled [3] ?

[1] https://pagure.io/fedora-reproducible-builds/project/issue/20
[2] 
https://github.com/kovidgoyal/calibre/blob/3855552c193dceb8a75dbe1a29fbc40f004133c3/src/calibre/linux.py#L1315
[3] https://doc.qt.io/qt-6/qimage.html#scaled-1

Zbyszek
-- 
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to