|  |  | 
|  | How To Convert Windows Fonts | 
|  | ============================ | 
|  |  | 
|  | If you have access to a Windows installation you should use | 
|  | fnt2bdf utility (found in the 'tools)' directory to convert | 
|  | bitmap fonts (VGASYS.FON, SSERIFE.FON, and SERIFE.FON) into | 
|  | the format that X Window System can recognize. | 
|  |  | 
|  | Step 1. Extract bitmap fonts with 'fnt2bdf'. | 
|  |  | 
|  | Step 2. Convert .bdf files produced by the Step 1 into | 
|  | .pcf files with 'bdftopcf'. | 
|  |  | 
|  | Step 3. Copy .pcf files to the font server directory which | 
|  | is usually /usr/lib/X11/fonts/misc (you will probably | 
|  | need superuser privileges). If you want to create a new | 
|  | font directory you will need to add it to the font path. | 
|  |  | 
|  | Step 4. Run 'mkfontdir' for the directory you copied fonts to. | 
|  | If you are already in X you should run 'xset fp rehash' | 
|  | to make X server aware of the new fonts. | 
|  |  | 
|  | Step 5. Edit WINE.CONF file to remove aliases for the fonts | 
|  | you've just installed. | 
|  |  | 
|  | WINE can get by without these fonts but 'the look and feel' | 
|  | may be quite different. Also, some applications try to load | 
|  | their custom fonts on the fly (WinWord 6.0) and since WINE does | 
|  | not implement this yet it instead prints out something like; | 
|  |  | 
|  | STUB: AddFontResource( SOMEFILE.FON ) | 
|  |  | 
|  | You can convert this file too. Note that .FON file may not hold | 
|  | any bitmap fonts and fnt2bdf will fail if this is the case. Also | 
|  | note that although the above message will not disappear WINE will | 
|  | work around the problem by using the font you extracted from the | 
|  | SOMEFILE.FON. | 
|  |  | 
|  | What to do with TrueType fonts? There are several commercial | 
|  | font tools that can convert them to the Type1 format but the | 
|  | quality of the resulting fonts is far from stellar. The other | 
|  | way to use them is to get a font server capable of rendering | 
|  | TrueType (Caldera has one). | 
|  |  | 
|  | However, there is a possibility of the native TrueType support | 
|  | via FreeType renderer in the future (hint, hint :-) | 
|  |  | 
|  |  | 
|  | How To Add Font Aliases To WINE.CONF | 
|  | ==================================== | 
|  |  | 
|  | Many Windows applications assume that fonts included in original Windows 3.1 | 
|  | distribution are always present. By default Wine creates a number of aliases | 
|  | that map them on the existing X fonts: | 
|  |  | 
|  | Windows font		...is mapped to...	X font | 
|  |  | 
|  | "MS Sans Serif"			->		"-adobe-helvetica-" | 
|  | "MS Serif"			->		"-bitstream-charter-" | 
|  | "Times New Roman"		->		"-adobe-times-" | 
|  | "Arial"				->		"-adobe-helvetica-" | 
|  |  | 
|  | There is no default alias for the "System" font. Also, no aliases are | 
|  | created for the fonts that applications install at runtime. The recommended | 
|  | way to deal with this problem is to convert the missing font (see above). | 
|  | If it proves impossible, like in the case with TrueType fonts, you can force | 
|  | the font mapper to choose a closely related X font by adding an alias to the | 
|  | [fonts] section. Make sure that the X font actually exists (with xfontsel | 
|  | tool). | 
|  |  | 
|  | AliasN = [Windows font], [X font] <, optional "mask X font" flag> | 
|  |  | 
|  | Example: | 
|  |  | 
|  | Alias0 = System, --international-, subst | 
|  | Alias1 = ... | 
|  | ... | 
|  |  | 
|  | Comments: | 
|  | *   There must be no gaps in the sequence {0, ..., N} otherwise all aliases | 
|  | after the first gap won't be read. | 
|  |  | 
|  | *   Usually font mapper translates X font names into font names visible to | 
|  | Windows programs in the following fashion: | 
|  |  | 
|  | X font		...will show up as...		Extracted name | 
|  |  | 
|  | --international-...		->			"International" | 
|  | -adobe-helvetica-...	->			"Helvetica" | 
|  | -adobe-utopia-...		->			"Utopia" | 
|  | -misc-fixed-...		->			"Fixed" | 
|  | -... | 
|  | -sony-fixed-...		->			"Sony Fixed" | 
|  | -... | 
|  |  | 
|  | Note that since -misc-fixed- and -sony-fixed- are different fonts | 
|  | Wine modified the second extracted name to make sure Windows programs | 
|  | can distinguish them because only extracted names appear in the font | 
|  | selection dialogs. | 
|  |  | 
|  | *   "Masking" alias replaces the original extracted name so that in the | 
|  | example case we will have the following mapping: | 
|  |  | 
|  | --international-		->			"System" | 
|  |  | 
|  | "Nonmasking" aliases are transparent to the user and they do not | 
|  | replace extracted names. | 
|  |  | 
|  | Wine discards an alias when it sees that the native X font is | 
|  | available. | 
|  |  | 
|  | *   If you do not have access to Windows fonts mentioned in the first | 
|  | paragraph you should try to substitute the "System" font with | 
|  | nonmasking alias. 'xfontsel' will show you the fonts available to | 
|  | X. | 
|  |  | 
|  | Alias.. = System, ...bold font without serifs | 
|  |  | 
|  | Also, some Windows applications request fonts without specifying the | 
|  | typeface name of the font. Font table starts with Arial in most Windows | 
|  | installations, however X font table starts with whatever is the first line | 
|  | in the fonts.dir.  Therefore WINE uses the following entry to determine | 
|  | which font to check first. | 
|  |  | 
|  | Example: | 
|  |  | 
|  | Default = -adobe-times- | 
|  |  | 
|  | Comments: | 
|  | It is better to have a scalable font family (bolds and italics included) | 
|  | as the default choice because mapper checks all available fonts until | 
|  | requested height and other attributes match perfectly or the end of the | 
|  | font table is reached. Typical X installations have scalable fonts in | 
|  | the ../fonts/Type1 and ../fonts/Speedo directories. | 
|  |  | 
|  |  | 
|  | How To Manage Cached Font Metrics | 
|  | ================================= | 
|  |  | 
|  | WINE stores detailed information about available fonts in the ~/.wine/.cachedmetrics | 
|  | file. You can copy it elsewhere and add this entry to the [fonts] section | 
|  | in your WINE.CONF: | 
|  |  | 
|  | FontMetrics = <file with metrics> | 
|  |  | 
|  | If WINE detects changes in the X font configuration it will rebuild font | 
|  | metrics from scratch and then it will overwrite ~/.wine/.cachedmetrics with | 
|  | the new information. This process can take a while. | 
|  |  | 
|  |  | 
|  | Too Small Or Too Large Fonts | 
|  | ============================ | 
|  |  | 
|  | Windows programs may ask WINE to render a font with the height specified | 
|  | in points. However, point-to-pixel ratio depends on the real physical size | 
|  | of your display (15", 17", etc...). X tries to provide an estimate of that | 
|  | but it can be quite different from the actual size. You can change this | 
|  | ratio by adding the following entry to the [fonts] section: | 
|  |  | 
|  | Resolution = <integer value> | 
|  |  | 
|  | In general, higher numbers give you larger fonts. Try to experiment with | 
|  | values in the 60 - 120 range. 96 is a good starting point. | 
|  |  | 
|  |  | 
|  | "FONT_Init: failed to load ..." Messages On Startup | 
|  | =================================================== | 
|  |  | 
|  | The most likely cause is a broken fonts.dir file in one of your font | 
|  | directories. You need to rerun 'mkfontdir' to rebuild this file. Read | 
|  | its manpage for more information. If you can't run mkfontdir on this machine | 
|  | as you are not root, use "xset -fp xxx" to remove the broken font path. |