2 Superclass for BitmapOutputDev, GFXOutputDev etc.
4 This file is part of swftools.
6 Swftools is free software; you can redistribute it and/or modify
7 it under the terms of the GNU General Public License as published by
8 the Free Software Foundation; either version 2 of the License, or
9 (at your option) any later version.
11 Swftools is distributed in the hope that it will be useful,
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 GNU General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with swftools; if not, write to the Free Software
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
20 #ifndef __commonoutputdev_h__
21 #define __commonoutputdev_h__
23 #include "OutputDev.h"
24 #include "../gfxdevice.h"
27 #define RENDER_STROKE 1
28 #define RENDER_FILLSTROKE 2
29 #define RENDER_INVISIBLE 3
32 class CommonOutputDev: public OutputDev
35 virtual void setDevice(gfxdevice_t*dev) = 0;
36 virtual void setMove(int x,int y) = 0;
37 virtual void setClip(int x1,int y1,int x2,int y2) = 0;
38 virtual void setParameter(const char*key, const char*value) = 0;
39 virtual void setPageMap(int*pagemap, int pagemap_len) = 0;
41 virtual void setPage(Page *page) { this->page = page; }
42 virtual void finishPage() {};
44 virtual GBool checkPageSlice(Page *page, double hDPI, double vDPI,
45 int rotate, GBool useMediaBox, GBool crop,
46 int sliceX, int sliceY, int sliceW, int sliceH,
47 GBool printing, Catalog *catalog,
48 GBool (*abortCheckCbk)(void *data) = NULL,
49 void *abortCheckCbkData = NULL)
58 #endif //__deviceinterface_h__