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

📄 globalparams.cc

📁 swf文件查看工具,能够看flash文件的格式
💻 CC
📖 第 1 页 / 共 5 页
字号:
    for (; *p1 && isspace(*p1); ++p1) ;    if (!*p1) {      break;    }    if (*p1 == '"' || *p1 == '\'') {      for (p2 = p1 + 1; *p2 && *p2 != *p1; ++p2) ;      ++p1;    } else {      for (p2 = p1 + 1; *p2 && !isspace(*p2); ++p2) ;    }    tokens->append(new GString(p1, p2 - p1));    p1 = *p2 ? p2 + 1 : p2;  }  // parse the line  if (tokens->getLength() > 0 &&      ((GString *)tokens->get(0))->getChar(0) != '#') {    cmd = (GString *)tokens->get(0);    if (!cmd->cmp("include")) {      if (tokens->getLength() == 2) {	incFile = (GString *)tokens->get(1);	if ((f2 = fopen(incFile->getCString(), "r"))) {	  parseFile(incFile, f2);	  fclose(f2);	} else {	  error(-1, "Couldn't find included config file: '%s' (%s:%d)",		incFile->getCString(), fileName->getCString(), line);	}      } else {	error(-1, "Bad 'include' config file command (%s:%d)",	      fileName->getCString(), line);      }    } else if (!cmd->cmp("nameToUnicode")) {      parseNameToUnicode(tokens, fileName, line);    } else if (!cmd->cmp("cidToUnicode")) {      parseCIDToUnicode(tokens, fileName, line);    } else if (!cmd->cmp("unicodeToUnicode")) {      parseUnicodeToUnicode(tokens, fileName, line);    } else if (!cmd->cmp("unicodeMap")) {      parseUnicodeMap(tokens, fileName, line);    } else if (!cmd->cmp("cMapDir")) {      parseCMapDir(tokens, fileName, line);    } else if (!cmd->cmp("toUnicodeDir")) {      parseToUnicodeDir(tokens, fileName, line);    } else if (!cmd->cmp("displayFontT1")) {      parseDisplayFont(tokens, displayFonts, displayFontT1, fileName, line);    } else if (!cmd->cmp("displayFontTT")) {      parseDisplayFont(tokens, displayFonts, displayFontTT, fileName, line);    } else if (!cmd->cmp("displayNamedCIDFontT1")) {      parseDisplayFont(tokens, displayNamedCIDFonts,		       displayFontT1, fileName, line);    } else if (!cmd->cmp("displayCIDFontT1")) {      parseDisplayFont(tokens, displayCIDFonts,		       displayFontT1, fileName, line);    } else if (!cmd->cmp("displayNamedCIDFontTT")) {      parseDisplayFont(tokens, displayNamedCIDFonts,		       displayFontTT, fileName, line);    } else if (!cmd->cmp("displayCIDFontTT")) {      parseDisplayFont(tokens, displayCIDFonts,		       displayFontTT, fileName, line);    } else if (!cmd->cmp("psFile")) {      parsePSFile(tokens, fileName, line);    } else if (!cmd->cmp("psFont")) {      parsePSFont(tokens, fileName, line);    } else if (!cmd->cmp("psNamedFont16")) {      parsePSFont16("psNamedFont16", psNamedFonts16,		    tokens, fileName, line);    } else if (!cmd->cmp("psFont16")) {      parsePSFont16("psFont16", psFonts16, tokens, fileName, line);    } else if (!cmd->cmp("psPaperSize")) {      parsePSPaperSize(tokens, fileName, line);    } else if (!cmd->cmp("psImageableArea")) {      parsePSImageableArea(tokens, fileName, line);    } else if (!cmd->cmp("psCrop")) {      parseYesNo("psCrop", &psCrop, tokens, fileName, line);    } else if (!cmd->cmp("psExpandSmaller")) {      parseYesNo("psExpandSmaller", &psExpandSmaller,		 tokens, fileName, line);    } else if (!cmd->cmp("psShrinkLarger")) {      parseYesNo("psShrinkLarger", &psShrinkLarger, tokens, fileName, line);    } else if (!cmd->cmp("psCenter")) {      parseYesNo("psCenter", &psCenter, tokens, fileName, line);    } else if (!cmd->cmp("psDuplex")) {      parseYesNo("psDuplex", &psDuplex, tokens, fileName, line);    } else if (!cmd->cmp("psLevel")) {      parsePSLevel(tokens, fileName, line);    } else if (!cmd->cmp("psEmbedType1Fonts")) {      parseYesNo("psEmbedType1", &psEmbedType1, tokens, fileName, line);    } else if (!cmd->cmp("psEmbedTrueTypeFonts")) {      parseYesNo("psEmbedTrueType", &psEmbedTrueType,		 tokens, fileName, line);    } else if (!cmd->cmp("psEmbedCIDPostScriptFonts")) {      parseYesNo("psEmbedCIDPostScript", &psEmbedCIDPostScript,		 tokens, fileName, line);    } else if (!cmd->cmp("psEmbedCIDTrueTypeFonts")) {      parseYesNo("psEmbedCIDTrueType", &psEmbedCIDTrueType,		 tokens, fileName, line);    } else if (!cmd->cmp("psPreload")) {      parseYesNo("psPreload", &psPreload, tokens, fileName, line);    } else if (!cmd->cmp("psOPI")) {      parseYesNo("psOPI", &psOPI, tokens, fileName, line);    } else if (!cmd->cmp("psASCIIHex")) {      parseYesNo("psASCIIHex", &psASCIIHex, tokens, fileName, line);    } else if (!cmd->cmp("textEncoding")) {      parseTextEncoding(tokens, fileName, line);    } else if (!cmd->cmp("textEOL")) {      parseTextEOL(tokens, fileName, line);    } else if (!cmd->cmp("textPageBreaks")) {      parseYesNo("textPageBreaks", &textPageBreaks,		 tokens, fileName, line);    } else if (!cmd->cmp("textKeepTinyChars")) {      parseYesNo("textKeepTinyChars", &textKeepTinyChars,		 tokens, fileName, line);    } else if (!cmd->cmp("fontDir")) {      parseFontDir(tokens, fileName, line);    } else if (!cmd->cmp("initialZoom")) {      parseInitialZoom(tokens, fileName, line);    } else if (!cmd->cmp("continuousView")) {      parseYesNo("continuousView", &continuousView, tokens, fileName, line);    } else if (!cmd->cmp("enableT1lib")) {      parseYesNo("enableT1lib", &enableT1lib, tokens, fileName, line);    } else if (!cmd->cmp("enableFreeType")) {      parseYesNo("enableFreeType", &enableFreeType, tokens, fileName, line);    } else if (!cmd->cmp("antialias")) {      parseYesNo("antialias", &antialias, tokens, fileName, line);    } else if (!cmd->cmp("vectorAntialias")) {      parseYesNo("vectorAntialias", &vectorAntialias,		 tokens, fileName, line);    } else if (!cmd->cmp("strokeAdjust")) {      parseYesNo("strokeAdjust", &strokeAdjust, tokens, fileName, line);    } else if (!cmd->cmp("screenType")) {      parseScreenType(tokens, fileName, line);    } else if (!cmd->cmp("screenSize")) {      parseInteger("screenSize", &screenSize, tokens, fileName, line);    } else if (!cmd->cmp("screenDotRadius")) {      parseInteger("screenDotRadius", &screenDotRadius,		   tokens, fileName, line);    } else if (!cmd->cmp("screenGamma")) {      parseFloat("screenGamma", &screenGamma,		 tokens, fileName, line);    } else if (!cmd->cmp("screenBlackThreshold")) {      parseFloat("screenBlackThreshold", &screenBlackThreshold,		 tokens, fileName, line);    } else if (!cmd->cmp("screenWhiteThreshold")) {      parseFloat("screenWhiteThreshold", &screenWhiteThreshold,		 tokens, fileName, line);    } else if (!cmd->cmp("urlCommand")) {      parseCommand("urlCommand", &urlCommand, tokens, fileName, line);    } else if (!cmd->cmp("movieCommand")) {      parseCommand("movieCommand", &movieCommand, tokens, fileName, line);    } else if (!cmd->cmp("mapNumericCharNames")) {      parseYesNo("mapNumericCharNames", &mapNumericCharNames,		 tokens, fileName, line);    } else if (!cmd->cmp("mapUnknownCharNames")) {      parseYesNo("mapUnknownCharNames", &mapUnknownCharNames,		 tokens, fileName, line);    } else if (!cmd->cmp("bind")) {      parseBind(tokens, fileName, line);    } else if (!cmd->cmp("unbind")) {      parseUnbind(tokens, fileName, line);    } else if (!cmd->cmp("printCommands")) {      parseYesNo("printCommands", &printCommands, tokens, fileName, line);    } else if (!cmd->cmp("errQuiet")) {      parseYesNo("errQuiet", &errQuiet, tokens, fileName, line);    } else {      error(-1, "Unknown config file command '%s' (%s:%d)",	    cmd->getCString(), fileName->getCString(), line);      if (!cmd->cmp("displayFontX") ||	  !cmd->cmp("displayNamedCIDFontX") ||	  !cmd->cmp("displayCIDFontX")) {	error(-1, "-- Xpdf no longer supports X fonts");      } else if (!cmd->cmp("t1libControl") || !cmd->cmp("freetypeControl")) {	error(-1, "-- The t1libControl and freetypeControl options have been replaced");	error(-1, "   by the enableT1lib, enableFreeType, and antialias options");      } else if (!cmd->cmp("fontpath") || !cmd->cmp("fontmap")) {	error(-1, "-- the config file format has changed since Xpdf 0.9x");      }    }  }  deleteGList(tokens, GString);}static char is_absolute(char*filename){    int l = strlen(filename);    if(filename[0] == '/' || filename[0] == '\\') 	return 1;    if(l>2 && filename[1]==':' && (filename[2]=='\\' || filename[2]=='/'))	return 1;    return 0;}static GString* qualify_filename(GString*path, GString*filename){  GString*fullpath = 0;  char*prefix = "/usr/local/share/xpdf/";  if (!is_absolute(filename->getCString())) {    /* relative path */    fullpath = path->copy();    fullpath->append(filename);  } else if (!strncmp(filename->getCString(), prefix, strlen(prefix))) {    /* xpdf default path */    char*s = strchr(filename->getCString()+strlen(prefix), '/');    if(s) {	fullpath = path->copy();	fullpath->append(s+1);    } else {	fullpath = filename->copy();    }  } else {    /* absolute path */    fullpath = filename->copy();  }  //printf("%s -%s-> %s\n", filename->getCString(), path->getCString(), fullpath->getCString());  return fullpath;}void GlobalParams::parseNameToUnicode(GList *tokens, GString *fileName,					 int line) {  GString *name;  char *tok1, *tok2;  FILE *f;  char buf[256];  int line2;  Unicode u;  if (tokens->getLength() != 2) {    error(-1, "Bad 'nameToUnicode' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  name = qualify_filename(this->path, (GString *)tokens->get(1));  if (!(f = fopen(name->getCString(), "r"))) {    error(-1, "Couldn't open 'nameToUnicode' file '%s' using path '%s'",	  name->getCString(), path->getCString());    return;  }  line2 = 1;  while (getLine(buf, sizeof(buf), f)) {    tok1 = strtok(buf, " \t\r\n");    tok2 = strtok(NULL, " \t\r\n");    if (tok1 && tok2) {      sscanf(tok1, "%x", &u);      nameToUnicode->add(tok2, u);    } else {      error(-1, "Bad line in 'nameToUnicode' file (%s:%d)", name, line2);    }    ++line2;  }  fclose(f);}void GlobalParams::parseCIDToUnicode(GList *tokens, GString *fileName,				     int line) {  GString *collection, *name, *old;  if (tokens->getLength() != 3) {    error(-1, "Bad 'cidToUnicode' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  collection = (GString *)tokens->get(1);  name = (GString *)tokens->get(2);  if ((old = (GString *)cidToUnicodes->remove(collection))) {    delete old;  }  cidToUnicodes->add(collection->copy(), qualify_filename(this->path, name));}void GlobalParams::parseUnicodeToUnicode(GList *tokens, GString *fileName,					 int line) {  GString *font, *file, *old;  if (tokens->getLength() != 3) {    error(-1, "Bad 'unicodeToUnicode' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  font = (GString *)tokens->get(1);  file = (GString *)tokens->get(2);  if ((old = (GString *)unicodeToUnicodes->remove(font))) {    delete old;  }  unicodeToUnicodes->add(font->copy(), qualify_filename(this->path, file));}void GlobalParams::parseUnicodeMap(GList *tokens, GString *fileName,				   int line) {  GString *encodingName, *name, *old;  if (tokens->getLength() != 3) {    error(-1, "Bad 'unicodeMap' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  encodingName = (GString *)tokens->get(1);  name = (GString *)tokens->get(2);  if ((old = (GString *)unicodeMaps->remove(encodingName))) {    delete old;  }  unicodeMaps->add(encodingName->copy(), qualify_filename(this->path, name));}void GlobalParams::parseCMapDir(GList *tokens, GString *fileName, int line) {  GString *collection, *dir;  GList *list;  if (tokens->getLength() != 3) {    error(-1, "Bad 'cMapDir' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  collection = (GString *)tokens->get(1);  dir = (GString *)tokens->get(2);  if (!(list = (GList *)cMapDirs->lookup(collection))) {    list = new GList();    cMapDirs->add(collection->copy(), list);  }  list->append(qualify_filename(this->path, dir));}void GlobalParams::parseToUnicodeDir(GList *tokens, GString *fileName,				     int line) {  GString *dir;  if (tokens->getLength() != 2) {    error(-1, "Bad 'toUnicodeDir' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  dir = (GString *)tokens->get(1);  toUnicodeDirs->append(qualify_filename(this->path, dir));}void GlobalParams::parseDisplayFont(GList *tokens, GHash *fontHash,				    DisplayFontParamKind kind,				    GString *fileName, int line) {  DisplayFontParam *param, *old;  GString *file;  if (tokens->getLength() < 2) {    goto err1;  }  param = new DisplayFontParam(((GString *)tokens->get(1))->copy(), kind);    switch (kind) {  case displayFontT1:    if (tokens->getLength() != 3) {      goto err2;    }    file = (GString *)tokens->get(2);    param->t1.fileName = qualify_filename(this->path, file);    break;  case displayFontTT:    if (tokens->getLength() != 3) {      goto err2;    }    file = (GString *)tokens->get(2);    param->tt.fileName = qualify_filename(this->path, file);    break;  }  if ((old = (DisplayFontParam *)fontHash->remove(param->name))) {    delete old;  }  fontHash->add(param->name, param);  return; err2:  delete param; err1:  error(-1, "Bad 'display*Font*' config file command (%s:%d)",	fileName->getCString(), line);}void GlobalParams::parsePSPaperSize(GList *tokens, GString *fileName,				    int line) {  GString *tok;  if (tokens->getLength() == 2) {    tok = (GString *)tokens->get(1);    if (!setPSPaperSize(tok->getCString())) {      error(-1, "Bad 'psPaperSize' config file command (%s:%d)",	    fileName->getCString(), line);    }  } else if (tokens->getLength() == 3) {    tok = (GString *)tokens->get(1);    psPaperWidth = atoi(tok->getCString());    tok = (GString *)tokens->get(2);    psPaperHeight = atoi(tok->getCString());    psImageableLLX = psImageableLLY = 0;    psImageableURX = psPaperWidth;    psImageableURY = psPaperHeight;  } else {    error(-1, "Bad 'psPaperSize' config file command (%s:%d)",	  fileName->getCString(), line);  }}void GlobalParams::parsePSImageableArea(GList *tokens, GString *fileName,					int line) {  if (tokens->getLength() != 5) {    error(-1, "Bad 'psImageableArea' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  psImageableLLX = atoi(((GString *)tokens->get(1))->getCString());  psImageableLLY = atoi(((GString *)tokens->get(2))->getCString());  psImageableURX = atoi(((GString *)tokens->get(3))->getCString());  psImageableURY = atoi(((GString *)tokens->get(4))->getCString());}void GlobalParams::parsePSLevel(GList *tokens, GString *fileName, int line) {  GString *tok;  if (tokens->getLength() != 2) {    error(-1, "Bad 'psLevel' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  tok = (GString *)tokens->get(1);  if (!tok->cmp("level1")) {    psLevel = psLevel1;  } else if (!tok->cmp("level1sep")) {    psLevel = psLevel1Sep;  } else if (!tok->cmp("level2")) {    psLevel = psLevel2;  } else if (!tok->cmp("level2sep")) {    psLevel = psLevel2Sep;  } else if (!tok->cmp("level3")) {    psLevel = psLevel3;  } else if (!tok->cmp("level3Sep")) {    psLevel = psLevel3Sep;  } else {    error(-1, "Bad 'psLevel' config file command (%s:%d)",	  fileName->getCString(), line);  }}void GlobalParams::parsePSFile(GList *tokens, GString *fileName, int line) {  if (tokens->getLength() != 2) {    error(-1, "Bad 'psFile' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  if (psFile) {    delete psFile;  }  psFile = ((GString *)tokens->get(1))->copy();}void GlobalParams::parsePSFont(GList *tokens, GString *fileName, int line) {  PSFontParam *param;  if (tokens->getLength() != 3) {    error(-1, "Bad 'psFont' config file command (%s:%d)",	  fileName->getCString(), line);    return;  }  param = new PSFontParam(((GString *)tokens->get(1))->copy(), 0,			  ((GString *)tokens->get(2))->copy(), NULL);  psFonts->add(param->pdfFontName, param);}void GlobalParams::parsePSFont16(char *cmdName, GList *fontList,				 GList *tokens, GString *fileName, int line) {  PSFontParam *param;  int wMode;  GString *tok;

⌨️ 快捷键说明

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