- iface->render (document, clip_x, clip_y, clip_width, clip_height);
+
+ return iface->get_info (document);
+}
+
+char *
+ev_document_get_text (EvDocument *document,
+ int page,
+ EvRectangle *rect)
+{
+ EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document);
+ char *retval;
+
+ LOG ("ev_document_get_text");
+ retval = iface->get_text (document, page, rect);
+
+ return retval;
+}
+
+GList *
+ev_document_get_links (EvDocument *document,
+ int page)
+{
+ EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document);
+ GList *retval;
+
+ LOG ("ev_document_get_link");
+ if (iface->get_links == NULL)
+ return NULL;
+ retval = iface->get_links (document, page);
+
+ return retval;
+}
+
+
+
+GdkPixbuf *
+ev_document_render_pixbuf (EvDocument *document,
+ int page,
+ double scale)
+{
+ EvDocumentIface *iface = EV_DOCUMENT_GET_IFACE (document);
+ GdkPixbuf *retval;
+
+ LOG ("ev_document_render_pixbuf");
+ g_assert (iface->render_pixbuf);
+
+ retval = iface->render_pixbuf (document, page, scale);
+
+ return retval;
+}
+
+void
+ev_document_info_free (EvDocumentInfo *info)
+{
+ if (info == NULL)
+ return;
+
+ g_free (info->title);
+ g_free (info->format);
+ g_free (info->author);
+ g_free (info->subject);
+ g_free (info->keywords);
+
+ g_free (info);