Bug 252003 - KolourPaint don't respect the EXIF orientation flag
Summary: KolourPaint don't respect the EXIF orientation flag
Status: RESOLVED FIXED
Alias: None
Product: kolourpaint
Classification: Applications
Component: general (show other bugs)
Version: Comes with KDE
Platform: Ubuntu Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: kolourpaint-support
URL:
Keywords:
: 373011 (view as bug list)
Depends on:
Blocks:
 
Reported: 2010-09-22 03:42 UTC by Yann
Modified: 2016-11-28 16:57 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 16.12


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yann 2010-09-22 03:42:56 UTC
Version:           Comes with KDE (using KDE 4.4.2) 
OS:                Linux

KolourPaint don't respect the EXIF orientation flag : he cannot recognize when a picture has been rotated using a EXIF rotation flag.


Downstream bug report : https://bugs.launchpad.net/ubuntu/+bug/644168

Reproducible: Always

Steps to Reproduce:
1) Rotate a picture using Shotwell for example, and save it.
2) Open the picture with KolourPaint



Actual Results:  
The picture displayed by KolourPaint is not rotated.

Expected Results:  
The picture displayed by KolourPaint is rotated.

OS: Linux (i686) release 2.6.32-24-generic
Compiler: cc
Comment 1 Martin Koller 2011-08-30 14:15:12 UTC
Yes. This is due to the fact that Qt does not provide the EXIF flags; see
https://bugreports.qt.nokia.com/browse/QTBUG-9414

I'd need to implement it somehow separately... 
gwenview uses some external lib for that I think.
Comment 2 Martin Koller 2016-10-26 16:52:27 UTC
Git commit a149002600d8d697fa7136488f0d4703054a3a4c by Martin Koller.
Committed on 26/10/2016 at 16:51.
Pushed by mkoller into branch 'master'.

Respect EXIF rotation information on loading an image
FIXED-IN: 16.12

M  +3    -2    CMakeLists.txt
M  +6    -1    document/kpDocument_Open.cpp

http://commits.kde.org/kolourpaint/a149002600d8d697fa7136488f0d4703054a3a4c
Comment 3 Christoph Feck 2016-10-27 00:33:24 UTC
You may have to check the runtime Qt version, because there are versions that automatically rotate JPEG according to EXIF.
Comment 4 Christoph Feck 2016-10-27 00:54:30 UTC
Additionally, since Qt 5.5, there is API to read the image orientation, see https://doc.qt.io/qt-5/qimageiohandler.html#Transformation-enum
Comment 5 Christoph Feck 2016-11-22 22:47:31 UTC
... and http://doc-snapshots.qt.io/qt5-dev/qimagereader.html#setAutoTransform actually transforms (i.e. rotates) the image automatically, if set to true (this is false because of compatibility reasons).

There is no reason to hardcode EXIF support.
Comment 6 Martin Koller 2016-11-23 06:56:27 UTC
On Tuesday 22 November 2016 22:47:31 you wrote:
> https://bugs.kde.org/show_bug.cgi?id=252003
> 
> --- Comment #5 from Christoph Feck <cfeck@kde.org> ---
> ... and http://doc-snapshots.qt.io/qt5-dev/qimagereader.html#setAutoTransform
> actually transforms (i.e. rotates) the image automatically, if set to true
> (this is false because of compatibility reasons).
> 
> There is no reason to hardcode EXIF support.

yes, I'll have a look
Comment 7 Martin Koller 2016-11-27 07:55:52 UTC
Git commit 8747c55692ac41f80ca1cce5633bc892c6b3d842 by Martin Koller.
Committed on 27/11/2016 at 07:53.
Pushed by mkoller into branch 'master'.

get rid of KExiv dependency since Qt5.5 can already auto-rotate images

M  +2    -4    CMakeLists.txt
M  +6    -6    document/kpDocument_Open.cpp

https://commits.kde.org/kolourpaint/8747c55692ac41f80ca1cce5633bc892c6b3d842
Comment 8 Martin Koller 2016-11-28 16:57:47 UTC
*** Bug 373011 has been marked as a duplicate of this bug. ***