summaryrefslogtreecommitdiff
path: root/noncore/unsupported/qpdf/xpdf/Gfx.h
Side-by-side diff
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 @@
//========================================================================
//
// Gfx.h
//
-// Copyright 1996 Derek B. Noonburg
+// Copyright 1996-2002 Glyph & Cog, LLC
//
//========================================================================
#ifndef GFX_H
#define GFX_H
@@ -24,12 +24,13 @@ class Dict;
class OutputDev;
class GfxFontDict;
class GfxFont;
class GfxPattern;
class GfxShading;
class GfxAxialShading;
+class GfxRadialShading;
class GfxState;
class Gfx;
struct PDFRectangle;
//------------------------------------------------------------------------
// Gfx
@@ -94,27 +95,37 @@ public:
// Constructor for regular output.
Gfx(XRef *xrefA, OutputDev *outA, int pageNum, Dict *resDict, fouble dpi,
PDFRectangle *box, GBool crop, PDFRectangle *cropBox, int rotate,
GBool printCommandsA);
- // Destructor.
+ // Constructor for a sub-page object.
+ Gfx(XRef *xrefA, OutputDev *outA, Dict *resDict,
+ PDFRectangle *box, GBool crop, PDFRectangle *cropBox);
+
~Gfx();
// Interpret a stream or array of streams.
void display(Object *obj, GBool topLevel = gTrue);
- void doWidgetForm(Object *str, fouble xMin, fouble yMin,
- fouble xMax, fouble yMax);
+ // Display an annotation, given its appearance (a Form XObject) and
+ // bounding box (in default user space).
+ void doAnnot(Object *str, fouble xMin, fouble yMin,
+ fouble xMax, fouble yMax);
+
+ void pushResources(Dict *resDict);
+ void popResources();
private:
XRef *xref; // the xref table for this PDF file
OutputDev *out; // output device
+ GBool subPage; // is this a sub-page object?
GBool printCommands; // print the drawing commands (for debugging)
GfxResources *res; // resource stack
+ int updateLevel;
GfxState *state; // current graphics state
GBool fontChanged; // set if font or text matrix has changed
GfxClipType clip; // do a clip?
int ignoreUndef; // current BX/EX nesting level
fouble baseMatrix[6]; // default matrix for most recent
@@ -176,12 +187,13 @@ private:
void opCloseFillStroke(Object args[], int numArgs);
void opEOFillStroke(Object args[], int numArgs);
void opCloseEOFillStroke(Object args[], int numArgs);
void doPatternFill(GBool eoFill);
void opShFill(Object args[], int numArgs);
void doAxialShFill(GfxAxialShading *shading);
+ void doRadialShFill(GfxRadialShading *shading);
void doEndPath();
// path clipping operators
void opClip(Object args[], int numArgs);
void opEOClip(Object args[], int numArgs);