📄 fontdatac.c
字号:
// Any res, regular BuildName(foundry, family, "regular", slant, "*", "*", "*", pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Pixel size only BuildName(foundry, family, "medium", slant, "*", "*", pixelSize, "*", resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// regular BuildName(foundry, family, "regular", slant, "*", "*", pixelSize, "*", resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, medium BuildName(foundry, family, "medium", slant, "*", "*", pixelSize, "*", "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, regular BuildName(foundry, family, "regular", slant, "*", "*", pixelSize, "*", "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any foundry or family BuildName("*", "*", "medium", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any width or addStyle BuildName("*", "*", "medium", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Point size only BuildName("*", "*", "medium", slant, "*", "*", "*", pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, "*", "*", "*", pointSize, resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, "*", "*", "*", pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, "*", "*", "*", pointSize, "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Pixel size only BuildName("*", "*", "medium", slant, "*", "*", pixelSize, "*", resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, "*", resStr, spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, "*", "*", pixelSize, "*", "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, "*", "*", spacing, "*", charset, bname); if ( FindFont(bname) ) return CreateNonBold(bname);//// Look for different sized fonts, but only bigger ones// BuildName(foundry, family, "medium", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Try regular BuildName(foundry, family, "regular", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res BuildName(foundry, family, "medium", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, avgWidth, charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Try regular BuildName(foundry, family, "regular", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, avgWidth, charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any width or add style BuildName(foundry, family, "medium", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// regular BuildName(foundry, family, "regular", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, medium BuildName(foundry, family, "medium", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, regular BuildName(foundry, family, "regular", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any foundry or family BuildName("*", "*", "medium", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any width or addStyle BuildName("*", "*", "medium", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, medium BuildName("*", "*", "medium", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);// Any res, regular BuildName("*", "*", "regular", slant, "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, bname); if ( FindBigger(bname) ) return CreateNonBold(bname);//// If nothing worked, return this font//#if 0 StringC errmsg("I could not find a non-bold version of the font: "); errmsg += name; halApp->PopupMessage(errmsg);#else if ( debug1 ) cout <<"I could not find a non-bold version of the font: " <<name<<endl;#endif nonBold = this; return nonBold;} // End NonBold/*---------------------------------------------------------------------- * Method to create the specified non-bold font */FontDataC*FontDataC::CreateNonBold(char *bname){//// Create a new font structure// if ( debug1 ) cout <<"Found non-bold font: " <<bname <<endl; nonBold = new FontDataC(bname); if ( !nonBold->loaded ) { delete nonBold; nonBold = this; } freeNonBold = True; return nonBold;} // End CreateNonBold/*---------------------------------------------------------------------- * Method to return an italic version of the current font */FontDataC*FontDataC::Italic(){ if ( !loaded && !italic ) italic = this;//// See if we already know this// if ( italic ) return italic;//// See if this is already an italic font// if ( slant.Equals('o', IGNORE_CASE) || slant.Equals('i', IGNORE_CASE) ) { italic = this; return italic; } if ( debug1 ) cout <<"Looking for an italic font for: " <<name NL;//// See if there is an oblique or italic version of this font.// StringC iname; BuildName(foundry, family, weight, "o", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Try italic BuildName(foundry, family, weight, "i", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any width or add style BuildName(foundry, family, weight, "o", "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName(foundry, family, weight, "i", "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName(foundry, family, weight, "o", "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName(foundry, family, weight, "i", "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Point size only BuildName(foundry, family, weight, "o", "*", "*", "*", pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName(foundry, family, weight, "i", "*", "*", "*", pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName(foundry, family, weight, "o", "*", "*", "*", pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName(foundry, family, weight, "i", "*", "*", "*", pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Pixel size only BuildName(foundry, family, weight, "o", "*", "*", pixelSize, "*", resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName(foundry, family, weight, "i", "*", "*", pixelSize, "*", resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName(foundry, family, weight, "o", "*", "*", pixelSize, "*", "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName(foundry, family, weight, "i", "*", "*", pixelSize, "*", "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any foundry or family BuildName("*", "*", weight, "o", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName("*", "*", weight, "i", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName("*", "*", weight, "o", setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName("*", "*", weight, "i", setWidth, addStyle, pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any width or addStyle BuildName("*", "*", weight, "o", "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName("*", "*", weight, "i", "*", "*", pixelSize, pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName("*", "*", weight, "o", "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName("*", "*", weight, "i", "*", "*", pixelSize, pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Point size only BuildName("*", "*", weight, "o", "*", "*", "*", pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName("*", "*", weight, "i", "*", "*", "*", pointSize, resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName("*", "*", weight, "o", "*", "*", "*", pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName("*", "*", weight, "i", "*", "*", "*", pointSize, "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Pixel size only BuildName("*", "*", weight, "o", "*", "*", pixelSize, "*", resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Italic BuildName("*", "*", weight, "i", "*", "*", pixelSize, "*", resStr, spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, oblique BuildName("*", "*", weight, "o", "*", "*", pixelSize, "*", "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);// Any res, italic BuildName("*", "*", weight, "i", "*", "*", pixelSize, "*", "*", spacing, "*", charset, iname); if ( FindFont(iname) ) return CreateItalic(iname);//// Look for different sized fonts, but only bigger ones// BuildName(foundry, family, weight, "o", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, iname); if ( FindBigger(iname) ) return CreateItalic(iname);// Try italic BuildName(foundry, family, weight, "i", setWidth, addStyle, pixelSize, pointSize, resStr, spacing, avgWidth, charset, iname); if ( FindBigger(iname) ) return CreateItalic(iname);// Any res BuildName(foundry, family, weight, "o", setWidth, addStyle, pixelSize, pointSize, "*", spacing, avgWidth, charset, iname); if ( FindBigger(iname) ) return CreateItalic(iname);// Try italic BuildName(foundry, family, weight, "i", setWidth, addStyle, pixelSize, pointSize, "*", spacing, avgWidth, charset, iname); if ( FindBigger(iname) ) return CreateItalic(iname);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -