Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarlos Garcia Campos <carlosgc@gnome.org>2008-08-19 16:05:20 (GMT)
committer Carlos Garcia Campos <carlosgc@src.gnome.org>2008-08-19 16:05:20 (GMT)
commit586ed14c9029da7eea09e7358227bc8bb5514bd4 (patch)
tree43c73bd96985e0623dacea0091621a4d49e43bf9
parente564142f4d25d983db3ad20ece131c531e418bc5 (diff)
Handle document orientation in tiff backend. Fixes bug #548444.
2008-08-19 Carlos Garcia Campos <carlosgc@gnome.org> * backend/tiff/tiff-document.c: (tiff_document_render): Handle document orientation in tiff backend. Fixes bug #548444. svn path=/trunk/; revision=3110
-rw-r--r--ChangeLog6
-rw-r--r--backend/tiff/tiff-document.c7
2 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 581f564..179d4b7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2008-08-19 Carlos Garcia Campos <carlosgc@gnome.org>
+
+ * backend/tiff/tiff-document.c: (tiff_document_render):
+
+ Handle document orientation in tiff backend. Fixes bug #548444.
+
2008-08-17 Carlos Garcia Campos <carlosgc@gnome.org>
* shell/ev-sidebar-thumbnails.c: (adjustment_changed_cb):
diff --git a/backend/tiff/tiff-document.c b/backend/tiff/tiff-document.c
index fc8f4aa..8b15b0c 100644
--- a/backend/tiff/tiff-document.c
+++ b/backend/tiff/tiff-document.c
@@ -215,6 +215,7 @@ tiff_document_render (EvDocument *document,
gint rowstride, bytes;
guchar *pixels = NULL;
guchar *p;
+ int orientation;
cairo_surface_t *surface;
cairo_surface_t *rotated_surface;
static const cairo_user_data_key_t key;
@@ -238,6 +239,10 @@ tiff_document_render (EvDocument *document,
return NULL;
}
+ if (! TIFFGetField (tiff_document->tiff, TIFFTAG_ORIENTATION, &orientation)) {
+ orientation = ORIENTATION_TOPLEFT;
+ }
+
tiff_document_get_resolution (tiff_document, &x_res, &y_res);
pop_handlers ();
@@ -274,7 +279,7 @@ tiff_document_render (EvDocument *document,
TIFFReadRGBAImageOriented (tiff_document->tiff,
width, height,
(uint32 *)pixels,
- ORIENTATION_TOPLEFT, 1);
+ orientation, 1);
pop_handlers ();
/* Convert the format returned by libtiff to