| Summary: | no exif-rotation in slideshow | ||
|---|---|---|---|
| Product: | [Applications] digikam | Reporter: | tudor <tudor> |
| Component: | Plugin-Generic-Presentation | Assignee: | Digikam Developers <digikam-bugs-null> |
| Status: | RESOLVED FIXED | ||
| Severity: | wishlist | ||
| Priority: | NOR | ||
| Version First Reported In: | unspecified | ||
| Target Milestone: | --- | ||
| Platform: | Gentoo Packages | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | 0.1.0 | |
| Sentry Crash Report: | |||
|
Description
tudor
2005-04-05 13:02:19 UTC
Was there ever? CVS commit by pahlibar: respect app set angle for rotating images in slideshow. need to come up with an angle spec to allow flipping of images as well (allowed by exif standard) BUGS: 103282 M +18 -1 imlibiface.cpp 1.5 M +1 -1 imlibiface.h 1.5 M +15 -7 plugin_slideshow.cpp 1.26 M +11 -6 slideshow.cpp 1.14 M +7 -3 slideshow.h 1.9 M +13 -4 slideshowgl.cpp 1.15 M +4 -3 slideshowgl.h 1.9 CVS commit by pahlibar:
if user wants exif rotated image, he will get exif rotated image (in kipi as
well)
CCBUGS: 103282
M +24 -1 kipiinterface.cpp 1.20
--- kdeextragear-3/digikam/digikam/kipiinterface.cpp #1.19:1.20
@@ -52,4 +52,5 @@ extern "C"
#include <libkexif/kexifutils.h>
+#include <libkexif/kexifdata.h>
// Local includes.
@@ -211,5 +212,27 @@ void DigikamImageInfo::addAttributes( co
int DigikamImageInfo::angle()
{
- // TODO ! This will a libKExif implementation call ?
+ AlbumSettings *settings = AlbumSettings::instance();
+ if (settings->getExifRotate())
+ {
+ KExifData exifData;
+
+ if (exifData.readFromFile(_url.path()))
+ {
+ KExifData::ImageOrientation orientation = exifData.getImageOrientation();
+
+ switch (orientation) {
+ case KExifData::ROT_180:
+ return 180;
+ case KExifData::ROT_90:
+ case KExifData::ROT_90_HFLIP:
+ case KExifData::ROT_90_VFLIP:
+ return 90;
+ case KExifData::ROT_270:
+ return 270;
+ default:
+ return 0;
+ }
+ }
+ }
return 0;
|