EvFileExporter

## EvFileExporter EvFileExporter |

## Synopsis

    enum                EvFileExporterFormat;
    enum                EvFileExporterCapabilities;
                        EvFileExporterContext;
    #define             EV_FILE_EXPORTER_IFACE              (k)
    #define             EV_IS_FILE_EXPORTER_IFACE           (k)
                        EvFileExporter;
    void                ev_file_exporter_begin              (EvFileExporter *exporter,
                                                             EvFileExporterContext *fc);
    void                ev_file_exporter_begin_page         (EvFileExporter *exporter);
    void                ev_file_exporter_do_page            (EvFileExporter *exporter,
                                                             EvRenderContext *rc);
    void                ev_file_exporter_end_page           (EvFileExporter *exporter);
    void                ev_file_exporter_end                (EvFileExporter *exporter);
    EvFileExporterCapabilities ev_file_exporter_get_capabilities
                                                            (EvFileExporter *exporter);

## Object Hierarchy

      GEnum
       +----EvFileExporterFormat

      GFlags
       +----EvFileExporterCapabilities

      GInterface
       +----EvFileExporter

## Description

## Details

### enum EvFileExporterFormat

    typedef enum {
    	EV_FILE_FORMAT_UNKNOWN,
    	EV_FILE_FORMAT_PS,
    	EV_FILE_FORMAT_PDF
    } EvFileExporterFormat;

`EV_FILE_FORMAT_UNKNOWN` |
`EV_FILE_FORMAT_PS` |
`EV_FILE_FORMAT_PDF` |

### enum EvFileExporterCapabilities

    typedef enum {
    	EV_FILE_EXPORTER_CAN_PAGE_SET     = 1 << 0,
    	EV_FILE_EXPORTER_CAN_COPIES       = 1 << 1,
    	EV_FILE_EXPORTER_CAN_COLLATE      = 1 << 2,
    	EV_FILE_EXPORTER_CAN_REVERSE      = 1 << 3,
    	EV_FILE_EXPORTER_CAN_SCALE        = 1 << 4,
    	EV_FILE_EXPORTER_CAN_GENERATE_PDF = 1 << 5,
    	EV_FILE_EXPORTER_CAN_GENERATE_PS  = 1 << 6,
    	EV_FILE_EXPORTER_CAN_PREVIEW      = 1 << 7,
    	EV_FILE_EXPORTER_CAN_NUMBER_UP    = 1 << 8
    } EvFileExporterCapabilities;

`EV_FILE_EXPORTER_CAN_PAGE_SET` |
`EV_FILE_EXPORTER_CAN_COPIES` |
`EV_FILE_EXPORTER_CAN_COLLATE` |
`EV_FILE_EXPORTER_CAN_REVERSE` |
`EV_FILE_EXPORTER_CAN_SCALE` |
`EV_FILE_EXPORTER_CAN_GENERATE_PDF` |
`EV_FILE_EXPORTER_CAN_GENERATE_PS` |
`EV_FILE_EXPORTER_CAN_PREVIEW` |
`EV_FILE_EXPORTER_CAN_NUMBER_UP` |

### EvFileExporterContext

    typedef struct {
    	EvFileExporterFormat format;
    	const gchar         *filename;
    	gint                 first_page;
    	gint                 last_page;
    	gdouble              paper_width;
    	gdouble              paper_height;
    	gboolean             duplex;
    	gint                 pages_per_sheet;
    } EvFileExporterContext;

### EV_FILE_EXPORTER_IFACE()

    #define EV_FILE_EXPORTER_IFACE(k)        (G_TYPE_CHECK_CLASS_CAST((k), EV_TYPE_FILE_EXPORTER, EvFileExporterInterface))

### EV_IS_FILE_EXPORTER_IFACE()

    #define EV_IS_FILE_EXPORTER_IFACE(k)     (G_TYPE_CHECK_CLASS_TYPE ((k), EV_TYPE_FILE_EXPORTER))

### EvFileExporter

    typedef struct _EvFileExporter EvFileExporter;

### ev_file_exporter_begin ()

    void                ev_file_exporter_begin              (EvFileExporter *exporter,
                                                             EvFileExporterContext *fc);

### ev_file_exporter_begin_page ()

    void                ev_file_exporter_begin_page         (EvFileExporter *exporter);

### ev_file_exporter_do_page ()

    void                ev_file_exporter_do_page            (EvFileExporter *exporter,
                                                             EvRenderContext *rc);

### ev_file_exporter_end_page ()

    void                ev_file_exporter_end_page           (EvFileExporter *exporter);

### ev_file_exporter_end ()

    void                ev_file_exporter_end                (EvFileExporter *exporter);

### ev_file_exporter_get_capabilities ()

    EvFileExporterCapabilities ev_file_exporter_get_capabilities
                                                            (EvFileExporter *exporter);