⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 globalparams.h

📁 source code: Covert TXT to PDF
💻 H
字号:
//========================================================================//// GlobalParams.h//// Copyright 2001-2002 Glyph & Cog, LLC////========================================================================#ifndef GLOBALPARAMS_H#define GLOBALPARAMS_H#include <aconf.h>#ifdef USE_GCC_PRAGMAS#pragma interface#endif#include <stdio.h>#include "gtypes.h"#include "CharTypes.h"#if MULTITHREADED#include "GMutex.h"#endifclass GString;class GList;class GHash;class NameToCharCode;class CharCodeToUnicode;class CIDToUnicodeCache;class UnicodeMap;class UnicodeMapCache;class CMap;class CMapCache;class GlobalParams;//------------------------------------------------------------------------// The global parameters object.extern GlobalParams *globalParams;//------------------------------------------------------------------------enum DisplayFontParamKind {  displayFontX,  displayFontT1,  displayFontTT};class DisplayFontParam {public:  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;    struct {      GString *fileName;    } t1;    struct {      GString *fileName;    } tt;  };  DisplayFontParam(GString *nameA, DisplayFontParamKind kindA);  DisplayFontParam(char *nameA, char *xlfdA, char *encodingA);  ~DisplayFontParam();};// Font rasterizer control.enum FontRastControl {  fontRastNone,			// don't use this rasterizer  fontRastPlain,		// use it, without anti-aliasing  fontRastAALow,		// use it, with low-level anti-aliasing  fontRastAAHigh		// use it, with high-level anti-aliasing};//------------------------------------------------------------------------class PSFontParam {public:  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, int wModeA,	      GString *psFontNameA, GString *encodingA);  ~PSFontParam();};//------------------------------------------------------------------------enum PSLevel {  psLevel1,  psLevel1Sep,  psLevel2,  psLevel2Sep,  psLevel3,  psLevel3Sep};//------------------------------------------------------------------------enum EndOfLineKind {  eolUnix,			// LF  eolDOS,			// CR+LF  eolMac			// CR};//------------------------------------------------------------------------class GlobalParams {public:  // Initialize the global parameters by attempting to read a config  // file.  GlobalParams(char *cfgFileName);  ~GlobalParams();  //----- accessors  CharCode getMacRomanCharCode(char *charName);  Unicode mapNameToUnicode(char *charName);  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 *fontName, GString *collection);  GString *getPSFile();  int getPSPaperWidth();  int getPSPaperHeight();  GBool getPSDuplex();  PSLevel getPSLevel();  PSFontParam *getPSFont(GString *fontName);  PSFontParam *getPSFont16(GString *fontName, GString *collection, int wMode);  GBool getPSEmbedType1();  GBool getPSEmbedTrueType();  GBool getPSEmbedCIDPostScript();  GBool getPSEmbedCIDTrueType();  GBool getPSOPI();  GBool getPSASCIIHex();  EndOfLineKind getTextEOL();  GBool getTextKeepTinyChars();  GString *findFontFile(GString *fontName, char *ext1, char *ext2);  GString *getInitialZoom();  FontRastControl getT1libControl();  FontRastControl getFreeTypeControl();  GString *getURLCommand() { return urlCommand; }  GString *getMovieCommand() { return movieCommand; }  GBool getMapNumericCharNames();  GBool getPrintCommands();  GBool getErrQuiet();  CharCodeToUnicode *getCIDToUnicode(GString *collection);  UnicodeMap *getUnicodeMap(GString *encodingName);  CMap *getCMap(GString *collection, GString *cMapName);  UnicodeMap *getTextEncoding();  //----- functions to set parameters  void addDisplayFont(DisplayFontParam *param);  void setPSFile(char *file);  GBool setPSPaperSize(char *size);  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 setTextKeepTinyChars(GBool keep);  void setInitialZoom(char *s);  GBool setT1libControl(char *s);  GBool setFreeTypeControl(char *s);  void setMapNumericCharNames(GBool map);  void setPrintCommands(GBool printCommandsA);  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, 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 parseCommand(char *cmdName, GString **val,		    GList *tokens, GString *fileName, int line);  void parseYesNo(char *cmdName, GBool *flag,		  GList *tokens, GString *fileName, int line);  UnicodeMap *getUnicodeMap2(GString *encodingName);  GBool setFontRastControl(FontRastControl *val, char *s);  //----- static tables  NameToCharCode *		// mapping from char name to    macRomanReverseMap;		//   MacRomanEncoding index  //----- user-modifiable settings  NameToCharCode *		// mapping from char name to Unicode    nameToUnicode;  GHash *cidToUnicodes;		// files for mappings from char collections				//   to Unicode, indexed by collection name				//   [GString]  GHash *residentUnicodeMaps;	// mappings from Unicode to char codes,				//   indexed by encoding name [UnicodeMap]  GHash *unicodeMaps;		// files for mappings from Unicode to char				//   codes, indexed by encoding name [GString]  GHash *cMapDirs;		// list of CMap dirs, indexed by collection				//   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  GBool textKeepTinyChars;	// keep all characters in 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  GString *movieCommand;	// command executed for movie annotations  GBool mapNumericCharNames;	// map numeric char names (from font subsets)?  GBool printCommands;		// print the drawing commands  GBool errQuiet;		// suppress error messages?  CIDToUnicodeCache *cidToUnicodeCache;  UnicodeMapCache *unicodeMapCache;  CMapCache *cMapCache;#ifdef MULTITHREADED  GMutex mutex;#endif};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -