Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pdf/xpdf/OutputDev.h
diff options
context:
space:
mode:
authorMartin Kretzschmar <mkretzschmar@src.gnome.org>2002-09-18 22:20:42 (GMT)
committer Martin Kretzschmar <mkretzschmar@src.gnome.org>2002-09-18 22:20:42 (GMT)
commit2a393c134fe3fe8eb85bf818cb7ad6ae4396322a (patch)
treeeba8b0dcaba42d799ed8313faee15fb74a5a0cd2 /pdf/xpdf/OutputDev.h
parent7aac8dc8533347e21311b15186e0af82f1b22fd6 (diff)
Synched with Xpdf 1.01
Diffstat (limited to 'pdf/xpdf/OutputDev.h')
-rw-r--r--pdf/xpdf/OutputDev.h36
1 files changed, 27 insertions, 9 deletions
diff --git a/pdf/xpdf/OutputDev.h b/pdf/xpdf/OutputDev.h
index d7de97a..cb825e0 100644
--- a/pdf/xpdf/OutputDev.h
+++ b/pdf/xpdf/OutputDev.h
@@ -2,7 +2,7 @@
//
// OutputDev.h
//
-// Copyright 1996 Derek B. Noonburg
+// Copyright 1996-2002 Glyph & Cog, LLC
//
//========================================================================
@@ -14,6 +14,7 @@
#endif
#include "gtypes.h"
+#include "CharTypes.h"
class GString;
class GfxState;
@@ -45,10 +46,17 @@ public:
// Does this device use drawChar() or drawString()?
virtual GBool useDrawChar() = 0;
+ // Does this device use beginType3Char/endType3Char? Otherwise,
+ // text in Type 3 fonts will be drawn with drawChar/drawString.
+ virtual GBool interpretType3Chars() = 0;
+
+ // Does this device need non-text content?
+ virtual GBool needNonText() { return gTrue; }
+
//----- initialization and control
// Set default transform matrix.
- virtual void setDefaultCTM(double *ctm1);
+ virtual void setDefaultCTM(double *ctm);
// Start a page.
virtual void startPage(int pageNum, GfxState *state) {}
@@ -111,11 +119,13 @@ public:
virtual void beginString(GfxState *state, GString *s) {}
virtual void endString(GfxState *state) {}
virtual void drawChar(GfxState *state, double x, double y,
- double dx, double dy, Guchar c) {}
- virtual void drawChar16(GfxState *state, double x, double y,
- double dx, double dy, int c) {}
+ double dx, double dy,
+ double originX, double originY,
+ CharCode code, Unicode *u, int uLen) {}
virtual void drawString(GfxState *state, GString *s) {}
- virtual void drawString16(GfxState *state, GString *s) {}
+ virtual GBool beginType3Char(GfxState *state,
+ CharCode code, Unicode *u, int uLen);
+ virtual void endType3Char(GfxState *state) {}
//----- image drawing
virtual void drawImageMask(GfxState *state, Object *ref, Stream *str,
@@ -123,7 +133,7 @@ public:
GBool inlineImg);
virtual void drawImage(GfxState *state, Object *ref, Stream *str,
int width, int height, GfxImageColorMap *colorMap,
- GBool inlineImg);
+ int *maskColors, GBool inlineImg);
#if OPI_SUPPORT
//----- OPI functions
@@ -131,10 +141,18 @@ public:
virtual void opiEnd(GfxState *state, Dict *opiDict);
#endif
+ //----- Type 3 font operators
+ virtual void type3D0(GfxState *state, double wx, double wy) {}
+ virtual void type3D1(GfxState *state, double wx, double wy,
+ double llx, double lly, double urx, double ury) {}
+
+ //----- PostScript XObjects
+ virtual void psXObject(Stream *psStream, Stream *level1Stream) {}
+
private:
- double ctm[6]; // coordinate transform matrix
- double ictm[6]; // inverse CTM
+ double defCTM[6]; // default coordinate transform matrix
+ double defICTM[6]; // inverse of default CTM
};
#endif