+static EvOrientation
+tiff_document_get_orientation (EvDocument *document)
+{
+ TiffDocument *tiff_document = TIFF_DOCUMENT (document);
+
+ return tiff_document->orientation;
+}
+
+static void
+tiff_document_set_orientation (EvDocument *document,
+ EvOrientation orientation)
+{
+ TiffDocument *tiff_document = TIFF_DOCUMENT (document);
+
+ tiff_document->orientation = orientation;
+}
+
+static GdkPixbuf *
+rotate_pixbuf (EvDocument *document, GdkPixbuf *pixbuf)
+{
+ TiffDocument *tiff_document = TIFF_DOCUMENT (document);
+
+ switch (tiff_document->orientation)
+ {
+ case EV_ORIENTATION_LANDSCAPE:
+ return gdk_pixbuf_rotate_simple (pixbuf, 90);
+ case EV_ORIENTATION_UPSIDEDOWN:
+ return gdk_pixbuf_rotate_simple (pixbuf, 180);
+ case EV_ORIENTATION_SEASCAPE:
+ return gdk_pixbuf_rotate_simple (pixbuf, 270);
+ default:
+ return g_object_ref (pixbuf);
+ }
+}
+