https://bugs.kde.org/show_bug.cgi?id=357522

Felix Ernst <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #5 from Felix Ernst <[email protected]> ---
I haven't done a single commit to Gwenview yet but I tried looking into this.
The situation does seem to have improved a bit since Jaime Torres' comment. I
rotated attachment 119156 with Gwenview 20.03.70 using Qt 5.13.2 and the size
didn't increase by a lot. I opened it, rotated once to the right, saved, loaded
the save, rotated once to the left and saved again. Overall the file size
changed from 32 KiB to 36.1 KiB and they look identical to me.
I can confirm that a 16 bit image is converted to 8 bit and to using LZW
compression even with this version.
Gwenview doesn't do anything special to transform .tiff images. Actually the
only image format for which I saw a little specific transformation code was
JPEG.
The relevant code that is used to rotate images is here:

void DocumentLoadedImpl::applyTransformation(Orientation orientation)
{
    QImage image = document()->image();
    QTransform matrix = ImageUtils::transformMatrix(orientation);
    image = image.transformed(matrix);
    setDocumentImage(image);
    emit imageRectUpdated(image.rect());
}

It is using the QImage class of Qt to do all the heavy-lifting of rotating all
supported image formats. It is probably out of scope for Gwenview or even KDE
to implement this kind of conversion logic but having a warning message might
be warranted. In any case this seems to be mostly a Qt problem.

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to