summaryrefslogtreecommitdiff
path: root/noncore/unsupported/qpdf/xpdf/Gfx.h
Unidiff
Diffstat (limited to 'noncore/unsupported/qpdf/xpdf/Gfx.h') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/unsupported/qpdf/xpdf/Gfx.h20
1 files changed, 16 insertions, 4 deletions
diff --git a/noncore/unsupported/qpdf/xpdf/Gfx.h b/noncore/unsupported/qpdf/xpdf/Gfx.h
index be5f2c2..2ecfb24 100644
--- a/noncore/unsupported/qpdf/xpdf/Gfx.h
+++ b/noncore/unsupported/qpdf/xpdf/Gfx.h
@@ -1,11 +1,11 @@
1//======================================================================== 1//========================================================================
2// 2//
3// Gfx.h 3// Gfx.h
4// 4//
5// Copyright 1996 Derek B. Noonburg 5// Copyright 1996-2002 Glyph & Cog, LLC
6// 6//
7//======================================================================== 7//========================================================================
8 8
9#ifndef GFX_H 9#ifndef GFX_H
10#define GFX_H 10#define GFX_H
11 11
@@ -24,12 +24,13 @@ class Dict;
24class OutputDev; 24class OutputDev;
25class GfxFontDict; 25class GfxFontDict;
26class GfxFont; 26class GfxFont;
27class GfxPattern; 27class GfxPattern;
28class GfxShading; 28class GfxShading;
29class GfxAxialShading; 29class GfxAxialShading;
30class GfxRadialShading;
30class GfxState; 31class GfxState;
31class Gfx; 32class Gfx;
32struct PDFRectangle; 33struct PDFRectangle;
33 34
34//------------------------------------------------------------------------ 35//------------------------------------------------------------------------
35// Gfx 36// Gfx
@@ -94,27 +95,37 @@ public:
94 95
95 // Constructor for regular output. 96 // Constructor for regular output.
96 Gfx(XRef *xrefA, OutputDev *outA, int pageNum, Dict *resDict, fouble dpi, 97 Gfx(XRef *xrefA, OutputDev *outA, int pageNum, Dict *resDict, fouble dpi,
97 PDFRectangle *box, GBool crop, PDFRectangle *cropBox, int rotate, 98 PDFRectangle *box, GBool crop, PDFRectangle *cropBox, int rotate,
98 GBool printCommandsA); 99 GBool printCommandsA);
99 100
100 // Destructor. 101 // Constructor for a sub-page object.
102 Gfx(XRef *xrefA, OutputDev *outA, Dict *resDict,
103 PDFRectangle *box, GBool crop, PDFRectangle *cropBox);
104
101 ~Gfx(); 105 ~Gfx();
102 106
103 // Interpret a stream or array of streams. 107 // Interpret a stream or array of streams.
104 void display(Object *obj, GBool topLevel = gTrue); 108 void display(Object *obj, GBool topLevel = gTrue);
105 109
106 void doWidgetForm(Object *str, fouble xMin, fouble yMin, 110 // Display an annotation, given its appearance (a Form XObject) and
107 fouble xMax, fouble yMax); 111 // bounding box (in default user space).
112 void doAnnot(Object *str, fouble xMin, fouble yMin,
113 fouble xMax, fouble yMax);
114
115 void pushResources(Dict *resDict);
116 void popResources();
108 117
109private: 118private:
110 119
111 XRef *xref; // the xref table for this PDF file 120 XRef *xref; // the xref table for this PDF file
112 OutputDev *out; // output device 121 OutputDev *out; // output device
122 GBool subPage; // is this a sub-page object?
113 GBool printCommands; // print the drawing commands (for debugging) 123 GBool printCommands; // print the drawing commands (for debugging)
114 GfxResources *res; // resource stack 124 GfxResources *res; // resource stack
125 int updateLevel;
115 126
116 GfxState *state; // current graphics state 127 GfxState *state; // current graphics state
117 GBool fontChanged; // set if font or text matrix has changed 128 GBool fontChanged; // set if font or text matrix has changed
118 GfxClipType clip; // do a clip? 129 GfxClipType clip; // do a clip?
119 int ignoreUndef; // current BX/EX nesting level 130 int ignoreUndef; // current BX/EX nesting level
120 fouble baseMatrix[6]; // default matrix for most recent 131 fouble baseMatrix[6]; // default matrix for most recent
@@ -176,12 +187,13 @@ private:
176 void opCloseFillStroke(Object args[], int numArgs); 187 void opCloseFillStroke(Object args[], int numArgs);
177 void opEOFillStroke(Object args[], int numArgs); 188 void opEOFillStroke(Object args[], int numArgs);
178 void opCloseEOFillStroke(Object args[], int numArgs); 189 void opCloseEOFillStroke(Object args[], int numArgs);
179 void doPatternFill(GBool eoFill); 190 void doPatternFill(GBool eoFill);
180 void opShFill(Object args[], int numArgs); 191 void opShFill(Object args[], int numArgs);
181 void doAxialShFill(GfxAxialShading *shading); 192 void doAxialShFill(GfxAxialShading *shading);
193 void doRadialShFill(GfxRadialShading *shading);
182 void doEndPath(); 194 void doEndPath();
183 195
184 // path clipping operators 196 // path clipping operators
185 void opClip(Object args[], int numArgs); 197 void opClip(Object args[], int numArgs);
186 void opEOClip(Object args[], int numArgs); 198 void opEOClip(Object args[], int numArgs);
187 199