1namespace Poppler {
2
3class BaseConverter {
4%TypeHeaderCode
5#include <qt5/poppler-qt5.h>
6%End
7
8public:
9    virtual ~BaseConverter();
10    void setOutputFileName(const QString &outputFileName);
11    void setOutputDevice(QIODevice *device);
12    virtual bool convert() = 0;
13    enum Error
14    {
15        NoError,
16        FileLockedError,
17        OpenOutputError,
18        NotSupportedInputFileError,
19    };
20    Error lastError() const;
21private:
22    BaseConverter(const Poppler::BaseConverter&);
23}; // class BaseConverter
24
25
26class PSConverter : Poppler::BaseConverter {
27%TypeHeaderCode
28#include <qt5/poppler-qt5.h>
29%End
30
31public:
32    enum PSOption {
33        Printing = 0x00000001,
34        StrictMargins = 0x00000002,
35        ForceRasterization = 0x00000004,
36%If(POPPLER_V0_20_0 -)
37        PrintToEPS = 0x00000008,
38        HideAnnotations = 0x00000010,
39%End
40    };
41    typedef QFlags<Poppler::PSConverter::PSOption> PSOptions;
42    ~PSConverter();
43    void setPageList(const QList<int> &pageList);
44    void setTitle(const QString &title);
45    void setHDPI(double hDPI);
46    void setVDPI(double vDPI);
47    void setRotate(int rotate);
48    void setPaperWidth(int paperWidth);
49    void setPaperHeight(int paperHeight);
50    void setRightMargin(int marginRight);
51    void setBottomMargin(int marginBottom);
52    void setLeftMargin(int marginLeft);
53    void setTopMargin(int marginTop);
54    void setStrictMargins(bool strictMargins);
55    void setForceRasterize(bool forceRasterize);
56    void setPSOptions(PSOptions options);
57    PSOptions psOptions() const;
58    bool convert();
59
60private:
61    PSConverter(const Poppler::PSConverter&);
62}; // class PSConverter
63
64
65class PDFConverter : Poppler::BaseConverter {
66%TypeHeaderCode
67#include <qt5/poppler-qt5.h>
68%End
69
70public:
71    enum PDFOption {
72        WithChanges = 0x00000001,
73    };
74    typedef QFlags<Poppler::PDFConverter::PDFOption> PDFOptions;
75    virtual ~PDFConverter();
76    void setPDFOptions(PDFOptions options);
77    PDFOptions pdfOptions() const;
78    bool convert();
79
80private:
81    PDFConverter(const Poppler::PDFConverter&);
82}; // class PDFConverter
83
84
85}; // namespace Poppler
86
87/* kate: indent-width 4; space-indent on; hl c++; indent-mode cstyle; */
88