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

📄 faq

📁 字体缩放显示
💻
字号:
This is a FreeType/2 users' mini-FAQTable of Contents:Q1: Where can I find the latest FreeType/2 release?Q2: Now that I have FreeType/2 installed, how do I actually add TrueTypefonts to OS/2?Q3: When will you add font-smoothing to the DLL? I really want that!Q4: Why does IBM's TrueType engine do such a poor job?Q5: But there are still differences with the glyphs produced by Windows orthe Mac, right?Q6: I've got TrueType Times New Roman installed but the system still seemsto be using the original ATM (Type 1) font. Why this odd behaviour?Q7: I noticed it takes a second or two before the Font Palette object opensfor the first time. Why?Q8: I noticed the characters sometimes have odd spacing. When will you fixit?Q9: Could you explain the open fonts limit?Q10: Can you recommend some fonts to use?Q11: What's a 'broken glyph'?Q12: Why do some fonts appear twice, once starting with an '@'?Q13: I've got a Chinese (Japanese, Korean) font but the characters aren'tthere! Why?Q14: I tried to use a DBCS font but I got an exception un UCONV.DLL. What'swrong?Q15: My system won't boot after I installed FreeType/2 and the uninstallscript won't work when I boot to command line. What now?Q16: I'm upgrading from previous version and I don't want to uninstall andreinstall. Is there any other way?Q17: What's this stuff about Times New Roman being aliased to Tms Rmn?Please explain this.Questions & Answers:Q1: Where can I find the latest FreeType/2 release?A1: Links to the latest release can be found at the FreeType/2 homepage athttp://www.freetype.org/ft_os2/index.html.Q2: Now that I have FreeType/2 installed, how do I actually add TrueTypefonts to OS/2?A2: I thought everyone knew that... It's simple, really. Open the FontPalette object (in System Setup folder) then click 'Edit font' and 'Add'.Now type the directory path where your TrueType fonts reside, such as'C:\WINDOWS\FONTS' if you have Win95 and click 'Add'. You'll be presented alist of all fonts that OS/2 found in specified directory. Simply select allfonts you wish to install click 'Add' for the last time. If you wish toremove fonts, just use the 'Delete' button in the 'Edit Font' dialog.TIP: If you wish to add font to OS/2 but don't want to actually copy thefile, just type the directory name where the font files already are insteadof 'X:\PSFONTS' in the 'Add New Fonts' dialog.Q3: When will you add font-smoothing to the DLL? I really want that!A3: Short answer: We can't.Long answer: The FreeType library already supports font-smoothing (orantialiasing or grayscaling). The problem is that OS/2's font engine, inits current incarnation, doesn't know anything about anti-aliased text andis only able to manage monochrome bitmaps. Font smoothing support wouldrequire some changes of PM/GPI/GRE components, which certainly is out ofour scope, and isn't planned by IBM (to our knowledge) in foreseeablefuture, if ever.If you really need font smoothing in your application, you can still usethe FreeType library itself. Be warned that it is a rather low-level engineand that you'll need to add a various number of text features on top ofthis code to get the equivalent of PM's font API.There is a good chance that FreeType 2.0 will ease the pain for developerswhen it's available.And if you really want font smoothing in OS/2, ask IBM!Q4: Why does IBM's TrueType engine do such a poor job?A4: It'd be easy to throw one or two stones at IBM's engineers if this wasthe result of lazy coding or bad software engineering. However, the problemis more complex, and PSP programmers deserve little, if any, blame.Trouble is that the TrueType specification, which can be found both onMicrosoft and Apple sites, has severe lacks, as well as particularly fuzzydefinitions. Part of the TT spec is the TrueType bytecode specification.This bytecode is used to write glyph programs that are used to explicitelyhint each glyph to have it rendered perfectly on the screen (and onprinters). It is made of approximately 200 opcodes, which relate to movingpoints on a pixel grid, measuring distances in any kind of direction,keeping widths and heights consistent across a single font, etc..Some of these opcodes are simply un-documented, or lack precise andimportant details related to their exact implementation. As a consequence,when FreeType started, it's first bytecode interpreter exhibited resultswhich were very similar to OS/2's one (i.e. bad baseline, incoherentwidths, "swashs" and bad serifs, etc..). There are several commercialengines which provide the same kind of "erroneous" output, like the one inthe BeOS for instance.It took FreeType developers _many_ months and experimentation to discoverthe real meaning of some opcodes, and incorporate it into the library. This"spelunker" work has been painful and slow, which is why few commercialcompanies, if any, dared to do it, but it finally pays off ! Moreover, theFreeType library is released under a BSD-like free license. This means that_anyone_ is now able to take the work that has been done to rewrite or fixhis own TrueType interpreter. (Of course, another good idea is to useFreeType as your core TrueType engine, to be able to benefit to ongoingfixes and "undocumented features" discoveries, etc...)Q5: But there are still differences with the glyphs produced by Windows orthe Mac, right?A5: Right. Another feature of the TrueType specification is to use fixedfloat pixel coordinates. When measuring distances along diagonals, somerouding error usually occur. Also, some TrueType opcodes have a more orless "chaotic" behaviour, where a ridiculous difference in inputs canproduce vastly different results. These factors mean that the only way tomatch bit-to-bit the glyphs produced by Windows or the Macintosh is toimplement the _exact_ same computation routines, and reproduce all theirrounding errors ! As FreeType is a clean-room implementation, this willnever be possible. Note that the bitmaps match in 95% cases, at least, andthat there are already differences between the Win 3.1 and Win95 TrueTyperenderers (i.e. look at the "m" of Arial at size 8 for example).The FreeType team tries very hard to "catch" differences, but there is apoint where this just isn't possible... However, we're very satisfied withits current quality, and we hope you'll be too :-)Q6: I've got TrueType Times New Roman installed but the system still seemsto be using the original ATM (Type 1) font. Why this odd behaviour?A6: It seems in case of a name clash OS/2 is using the font that wasinstalled later. Try removing and reinstalling the TrueType font.Alternately remove the ATM (Type 1) font (not recommended).Experiments also suggest that different apps behave differently. Some appswill for example show both fonts but will use only one of them anyway. Itreally depends.Q7: I noticed it takes a second or two before the Font Palette object opensfor the first time. Why?A7: Because FreeType/2 postpones as much work on the fonts as possibleuntil it's really needed. This means the first opening of a font is a bitslower. But it also means no resources are unnecessarily wasted. And it'snot really that bad :-) This behaviour is also noticeable when e.g. openinga document for the first time. Note that subsequent openings are OK becauseOS/2 caches as much information as possible.Q8: I noticed the characters sometimes have odd spacing. When will you fixit?A8: I won't. It's not really a bug, it's a feature. If they weren't spaced'oddly', the result might look better, but only at the cost ofWindows-style 'WYSIWYG', i.e. what you see on screen will almost certainlylook totally different on any other device. Anyway, the spacing iscontrolled by OS/2 and not by the Font Driver itself, so if you still don'tlike it, IBM is the right one to ask :-)This problem is particularly visible in Netscape. Most probably thishappens because Netscape tries to use fractional pointsizes, but mostTrueType fonts don't allow that. This means that Netscape sometimespositions characters as if they were e.g. 8.6 points while their actualsize is only 8 points.Q9: Could you explain the open fonts limit?A9: Sure. If you install 50 fonts in OS/2, the system opens them all atstartup and keeps them open until shutdown. While many users may want tohave large number of fonts installed (like me), very few of them probablyuse all the fonts all the time. This of course wastes lots of memory andswap space. Just for your information, normal fonts take up 30-50 K ofmemory with FreeType/2, but for example Times New Roman MT 30 takes over500K!FreeType/2 overcomes this problem by only actually keeping in memory thelast n most recently used fonts. The actual number is settable via entry inOS2.INI and there's an simple REXX script to do that. Good default might be10-15 fonts, depending what you want to do with them.Note that this process is totally transparent to the system. You won't haveto do anything, FreeType/2 will take care of everything. The only thingsyou will notice is dramatically reduced memory consumption and when workingwith large numbers of fonts there may be slight delay when reopening afont.Q10: Can you recommend some fonts to use?A10: Yes! I recommend to use Micro$oft's (oh no!) Core Fonts - Times NewRoman, Arial and Courier New, plus other MS fonts. There are severalreasons: the fonts have very good quality, stick to the TrueType spec pretywell, support many countries and are widely available. Moreover they'refree. You can certainly find some Win95 or NT machine in your neighbourhood(all too easily I'm afraid). They should also be available from MS's Website.Note: If you want to copy the fonts from a Win95 machine, they're in\WINDOWS\FONTS. Watch out, the directory is hidden!Q11: What's a 'broken glyph'?A11: Some fonts contain buggy or 'broken' glyphs that cannot be reliablyloaded and rendered. Those glyphs are usually very rarely used so you mightnever notice. There was a problem with the first Beta of FreeType/2 that ifthere was a single broken glyph in a font, thewhole font didn't work.Q12: Why do some fonts appear twice, once starting with an '@'?A12: It's because of DBCS systems. If you don't have one, you can safelyignore these fonts. The DBCS characters in them are rotated 90 degreescounterclockwise. It allows you to write vertical text (e.g. Chinese) witha normal word processor. You write the text horizontally but if you turnthe resulting page 90 degrees clockwise, you've got vertical text.It's not working perfectly yet.Q13: I've got a Chinese (Japanese, Korean) font but the characters aren'tthere! Why?A13: Most probably the font and your system settings don't mix. Onepossible cause is that your country setting is different than that of thefont and the font contains no information about what language it's meantfor. In that case, FreeType/2 has to guess from your country setting. Thismeans it might try to treat e.g. Japanese font as a Korean one which meansyou won't be able to access the Japanese characters in it. It's all a bitmore complicated but it's a result of how national language support is donein OS/2.Q14: I tried to use a DBCS font but I got an exception un UCONV.DLL. What'swrong?A14: UCONV.DLL it used for character code translation. A likely cause isthat you are missing the required translation table in \LANGUAGE\CODEPAGEdirectory on your boot drive. Look for file named 'IBM<CP>', where <CP> isthe codepage you use, e.g. IBM950 for Taiwan or IBM949 for Korea.Q15: My system won't boot after I installed FreeType/2 and the uninstallscript won't work when I boot to command line. What now?A15: But you've archived the key files, haven't you? If not, one way out ofthis mess is booting to command line and renaming or deleting FREETYPE.DLLfrom \OS2\DLL. Your system should boot then.Q16: I'm upgrading from previous version and I don't want to uninstall andreinstall. Is there any other way?A16: Yes! There's a little utility called REPMOD.EXE which allows you toreplace files that are in use. In case you don't already have it, it'sincluded in the FreeType/2 package. You should simply run UPDATE.CMD. Thenew version will be used on next reboot.Q17: What's this stuff about Times New Roman being aliased to Tms Rmn?Please explain this.A17: OS/2 contains bitmap font called Tms Rmn which is often used in dialogwindows and elsewhere. The bitmap font contains only several pointsizes (8,10, 12, 14, 18, 24). If you request a missing pointsize, OS/2's graphicsengine (GRE) substitutes it from the (outline) ATM font Times New Romanwhich can also be referred to as Roman/Tms Rmn. Now FreeType/2 mimics thisfunctionality and can fully replace the ATM version. I recommend touninstall the ATM font since if both fonts are installed, some apps use theATM one, others TrueType one, without any apparent logic. If you uninstall(via Font Palette) the ATM version, you will always get high-qualityTrueType Times New Roman.

⌨️ 快捷键说明

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