author | sandman <sandman> | 2002-05-23 23:51:52 (UTC) |
---|---|---|
committer | sandman <sandman> | 2002-05-23 23:51:52 (UTC) |
commit | 2f3bb7b07f833273d966d41813e68bfe8b9d8d76 (patch) (side-by-side diff) | |
tree | 00beb1bd9e7f4ba79e22334a0d258269b28f4564 /noncore/unsupported/qpdf/xpdf/GlobalParams.h | |
parent | 6e82b45dd416ceeba78765717b700e853c96a137 (diff) | |
download | opie-2f3bb7b07f833273d966d41813e68bfe8b9d8d76.zip opie-2f3bb7b07f833273d966d41813e68bfe8b9d8d76.tar.gz opie-2f3bb7b07f833273d966d41813e68bfe8b9d8d76.tar.bz2 |
Port to xpdf 1.01
Diffstat (limited to 'noncore/unsupported/qpdf/xpdf/GlobalParams.h') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/unsupported/qpdf/xpdf/GlobalParams.h | 49 |
1 files changed, 40 insertions, 9 deletions
diff --git a/noncore/unsupported/qpdf/xpdf/GlobalParams.h b/noncore/unsupported/qpdf/xpdf/GlobalParams.h index ecbb5fc..b651110 100644 --- a/noncore/unsupported/qpdf/xpdf/GlobalParams.h +++ b/noncore/unsupported/qpdf/xpdf/GlobalParams.h @@ -1,11 +1,11 @@ //======================================================================== // // GlobalParams.h // -// Copyright 2001 Derek B. Noonburg +// Copyright 2001-2002 Glyph & Cog, LLC // //======================================================================== #ifndef GLOBALPARAMS_H #define GLOBALPARAMS_H @@ -42,14 +42,15 @@ enum DisplayFontParamKind { displayFontTT }; class DisplayFontParam { public: - GString *name; // font name for 8-bit fonts; - // collection name for CID fonts + GString *name; // font name for 8-bit fonts and named + // CID fonts; collection name for + // generic CID fonts DisplayFontParamKind kind; union { struct { GString *xlfd; GString *encoding; } x; @@ -76,26 +77,34 @@ enum FontRastControl { //------------------------------------------------------------------------ class PSFontParam { public: - GString *pdfFontName; - GString *psFontName; + GString *pdfFontName; // PDF font name for 8-bit fonts and + // named 16-bit fonts; char collection + // name for generic 16-bit fonts + int wMode; // writing mode (0=horiz, 1=vert) for + // 16-bit fonts + GString *psFontName; // PostScript font name + GString *encoding; // encoding, for 16-bit fonts only - PSFontParam(GString *pdfFontNameA, GString *psFontNameA); + PSFontParam(GString *pdfFontNameA, int wModeA, + GString *psFontNameA, GString *encodingA); ~PSFontParam(); }; //------------------------------------------------------------------------ enum PSLevel { psLevel1, psLevel1Sep, psLevel2, - psLevel2Sep + psLevel2Sep, + psLevel3, + psLevel3Sep }; //------------------------------------------------------------------------ enum EndOfLineKind { eolUnix, // LF @@ -122,25 +131,30 @@ public: FILE *getCIDToUnicodeFile(GString *collection); UnicodeMap *getResidentUnicodeMap(GString *encodingName); FILE *getUnicodeMapFile(GString *encodingName); FILE *findCMapFile(GString *collection, GString *cMapName); FILE *findToUnicodeFile(GString *name); DisplayFontParam *getDisplayFont(GString *fontName); - DisplayFontParam *getDisplayCIDFont(GString *collection); + DisplayFontParam *getDisplayCIDFont(GString *fontName, GString *collection); GString *getPSFile() { return psFile; } int getPSPaperWidth() { return psPaperWidth; } int getPSPaperHeight() { return psPaperHeight; } GBool getPSDuplex() { return psDuplex; } PSLevel getPSLevel() { return psLevel; } PSFontParam *getPSFont(GString *fontName); + PSFontParam *getPSFont16(GString *fontName, GString *collection, int wMode); GBool getPSEmbedType1() { return psEmbedType1; } GBool getPSEmbedTrueType() { return psEmbedTrueType; } + GBool getPSEmbedCIDPostScript() { return psEmbedCIDPostScript; } + GBool getPSEmbedCIDTrueType() { return psEmbedCIDTrueType; } GBool getPSOPI() { return psOPI; } + GBool getPSASCIIHex() { return psASCIIHex; } GString *getTextEncodingName() { return textEncoding; } EndOfLineKind getTextEOL() { return textEOL; } GString *findFontFile(GString *fontName, char *ext1, char *ext2); + GString *getInitialZoom() { return initialZoom; } FontRastControl getT1libControl() { return t1libControl; } FontRastControl getFreeTypeControl() { return freetypeControl; } GString *getURLCommand() { return urlCommand; } GBool getMapNumericCharNames() { return mapNumericCharNames; } GBool getErrQuiet() { return errQuiet; } @@ -156,35 +170,44 @@ public: void setPSPaperWidth(int width); void setPSPaperHeight(int height); void setPSDuplex(GBool duplex); void setPSLevel(PSLevel level); void setPSEmbedType1(GBool embed); void setPSEmbedTrueType(GBool embed); + void setPSEmbedCIDPostScript(GBool embed); + void setPSEmbedCIDTrueType(GBool embed); void setPSOPI(GBool opi); + void setPSASCIIHex(GBool hex); void setTextEncoding(char *encodingName); GBool setTextEOL(char *s); + void setInitialZoom(char *s); GBool setT1libControl(char *s); GBool setFreeTypeControl(char *s); void setErrQuiet(GBool errQuietA); private: + void parseFile(GString *fileName, FILE *f); void parseNameToUnicode(GList *tokens, GString *fileName, int line); void parseCIDToUnicode(GList *tokens, GString *fileName, int line); void parseUnicodeMap(GList *tokens, GString *fileName, int line); void parseCMapDir(GList *tokens, GString *fileName, int line); void parseToUnicodeDir(GList *tokens, GString *fileName, int line); - void parseDisplayFont(GList *tokens, GBool isCID, DisplayFontParamKind kind, + void parseDisplayFont(GList *tokens, GHash *fontHash, + DisplayFontParamKind kind, GString *fileName, int line); void parsePSFile(GList *tokens, GString *fileName, int line); void parsePSPaperSize(GList *tokens, GString *fileName, int line); void parsePSLevel(GList *tokens, GString *fileName, int line); void parsePSFont(GList *tokens, GString *fileName, int line); + void parsePSFont16(char *cmdName, GList *fontList, + GList *tokens, GString *fileName, int line); void parseTextEncoding(GList *tokens, GString *fileName, int line); void parseTextEOL(GList *tokens, GString *fileName, int line); void parseFontDir(GList *tokens, GString *fileName, int line); + void parseInitialZoom(GList *tokens, GString *fileName, int line); void parseFontRastControl(char *cmdName, FontRastControl *val, GList *tokens, GString *fileName, int line); void parseURLCommand(GList *tokens, GString *fileName, int line); void parseYesNo(char *cmdName, GBool *flag, GList *tokens, GString *fileName, int line); GBool setFontRastControl(FontRastControl *val, char *s); @@ -209,27 +232,35 @@ private: // name [GList[GString]] GList *toUnicodeDirs; // list of ToUnicode CMap dirs [GString] GHash *displayFonts; // display font info, indexed by font name // [DisplayFontParam] GHash *displayCIDFonts; // display CID font info, indexed by // collection [DisplayFontParam] + GHash *displayNamedCIDFonts; // display CID font info, indexed by + // font name [DisplayFontParam] GString *psFile; // PostScript file or command (for xpdf) int psPaperWidth; // paper size, in PostScript points, for int psPaperHeight; // PostScript output GBool psDuplex; // enable duplexing in PostScript? PSLevel psLevel; // PostScript level to generate GHash *psFonts; // PostScript font info, indexed by PDF // font name [PSFontParam] + GList *psNamedFonts16; // named 16-bit fonts [PSFontParam] + GList *psFonts16; // generic 16-bit fonts [PSFontParam] GBool psEmbedType1; // embed Type 1 fonts? GBool psEmbedTrueType; // embed TrueType fonts? + GBool psEmbedCIDPostScript; // embed CID PostScript fonts? + GBool psEmbedCIDTrueType; // embed CID TrueType fonts? GBool psOPI; // generate PostScript OPI comments? + GBool psASCIIHex; // use ASCIIHex instead of ASCII85? GString *textEncoding; // encoding (unicodeMap) to use for text // output EndOfLineKind textEOL; // type of EOL marker to use for text // output GList *fontDirs; // list of font dirs [GString] + GString *initialZoom; // initial zoom level FontRastControl t1libControl; // t1lib rasterization mode FontRastControl // FreeType rasterization mode freetypeControl; GString *urlCommand; // command executed for URL links GBool mapNumericCharNames; // map numeric char names (from font subsets)? GBool errQuiet; // suppress error messages? |