diff options
author | Carlos 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) |
commit | 586ed14c9029da7eea09e7358227bc8bb5514bd4 (patch) | |
tree | 43c73bd96985e0623dacea0091621a4d49e43bf9 | |
parent | e564142f4d25d983db3ad20ece131c531e418bc5 (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-- | ChangeLog | 6 | ||||
-rw-r--r-- | backend/tiff/tiff-document.c | 7 |
2 files changed, 12 insertions, 1 deletions
@@ -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 |