Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/pdf/xpdf/PSOutputDev.h
diff options
context:
space:
mode:
authorMartin Kretzschmar <mkretzschmar@src.gnome.org>2002-09-18 20:32:18 (GMT)
committer Martin Kretzschmar <mkretzschmar@src.gnome.org>2002-09-18 20:32:18 (GMT)
commit7aac8dc8533347e21311b15186e0af82f1b22fd6 (patch)
tree02650bb02c8a1d8468c22f50ff151885d233016b /pdf/xpdf/PSOutputDev.h
parentd99fb4f4acd14fcdbda968abd907547dcc7af40c (diff)
Synched with Xpdf 0.92
this adds "decryption" support testing this code after six weeks immediately gives me segfaults (image drawing) :-O must have fixed that later without knowing :-O
Diffstat (limited to 'pdf/xpdf/PSOutputDev.h')
-rw-r--r--pdf/xpdf/PSOutputDev.h66
1 files changed, 55 insertions, 11 deletions
diff --git a/pdf/xpdf/PSOutputDev.h b/pdf/xpdf/PSOutputDev.h
index 603cc08..d23d19e 100644
--- a/pdf/xpdf/PSOutputDev.h
+++ b/pdf/xpdf/PSOutputDev.h
@@ -20,6 +20,7 @@
class GfxPath;
class GfxFont;
+class GfxColorSpace;
//------------------------------------------------------------------------
// Parameters
@@ -28,6 +29,17 @@ class GfxFont;
// Generate Level 1 PostScript?
extern GBool psOutLevel1;
+// Generate Level 1 separable PostScript?
+extern GBool psOutLevel1Sep;
+
+// Generate Encapsulated PostScript?
+extern GBool psOutEPS;
+
+#if OPI_SUPPORT
+// Generate OPI comments?
+extern GBool psOutOPI;
+#endif
+
// Paper size.
extern int paperWidth;
extern int paperHeight;
@@ -111,30 +123,49 @@ public:
//----- text drawing
virtual void drawString(GfxState *state, GString *s);
+ virtual void drawString16(GfxState *state, GString *s);
//----- image drawing
- virtual void drawImageMask(GfxState *state, Stream *str,
+ virtual void drawImageMask(GfxState *state, Object *ref, Stream *str,
int width, int height, GBool invert,
GBool inlineImg);
- virtual void drawImage(GfxState *state, Stream *str, int width,
- int height, GfxImageColorMap *colorMap,
+ virtual void drawImage(GfxState *state, Object *ref, Stream *str,
+ int width, int height, GfxImageColorMap *colorMap,
GBool inlineImg);
+#if OPI_SUPPORT
+ //----- OPI functions
+ virtual void opiBegin(GfxState *state, Dict *opiDict);
+ virtual void opiEnd(GfxState *state, Dict *opiDict);
+#endif
+
private:
+ void setupResources(Dict *resDict);
void setupFonts(Dict *resDict);
void setupFont(GfxFont *font);
- void setupEmbeddedType1Font(Ref *id);
- void setupEmbeddedType1Font(char *fileName);
- void setupEmbeddedType1CFont(GfxFont *font, Ref *id);
+ void setupEmbeddedType1Font(Ref *id, char *psName);
+ void setupEmbeddedType1Font(GString *fileName, char *psName);
+ void setupEmbeddedType1CFont(GfxFont *font, Ref *id, char *psName);
+ void setupImages(Dict *resDict);
+ void setupImage(Ref id, Stream *str);
void doPath(GfxPath *path);
void doImageL1(GfxImageColorMap *colorMap,
GBool invert, GBool inlineImg,
Stream *str, int width, int height, int len);
- void doImage(GfxImageColorMap *colorMap,
- GBool invert, GBool inlineImg,
- Stream *str, int width, int height, int len);
- void writePS(char *fmt, ...);
+ void doImageL1Sep(GfxImageColorMap *colorMap,
+ GBool invert, GBool inlineImg,
+ Stream *str, int width, int height, int len);
+ void doImageL2(Object *ref, GfxImageColorMap *colorMap,
+ GBool invert, GBool inlineImg,
+ Stream *str, int width, int height, int len);
+ void dumpColorSpaceL2(GfxColorSpace *colorSpace);
+ void opiBegin20(GfxState *state, Dict *dict);
+ void opiBegin13(GfxState *state, Dict *dict);
+ void opiTransform(GfxState *state, double x0, double y0,
+ double *x1, double *y1);
+ GBool getFileSpec(Object *fileSpec, Object *fileName);
+ void writePS(const char *fmt, ...);
void writePSString(GString *s);
GBool embedType1; // embed Type 1 fonts?
@@ -150,10 +181,23 @@ private:
Ref *fontFileIDs; // list of object IDs of all embedded fonts
int fontFileIDLen; // number of entries in fontFileIDs array
int fontFileIDSize; // size of fontFileIDs array
- char **fontFileNames; // list of names of all embedded external fonts
+ GString **fontFileNames; // list of names of all embedded external fonts
int fontFileNameLen; // number of entries in fontFileNames array
int fontFileNameSize; // size of fontFileNames array
+ double tx, ty; // global translation
+ double xScale, yScale; // global scaling
+ GBool landscape; // true for landscape, false for portrait
+
+ GString *embFontList; // resource comments for embedded fonts
+
+#if OPI_SUPPORT
+ int opi13Nest; // nesting level of OPI 1.3 objects
+ int opi20Nest; // nesting level of OPI 2.0 objects
+#endif
+
+ GBool type3Warning; // only show the Type 3 font warning once
+
GBool ok; // set up ok?
};