mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-31 10:13:56 +00:00
670cdc45be
Sat Aug 23 00:05:23 1997 Andreas Mohr <100.30936@germany.net> * [if1632/kernel.spec] [if1632/mmsystem.spec] Added some stubs. * [include/neexe.h] [loader/module.c] Added warning for OS/2 executables. * [multimedia/midi.c] Shortened MIDIOUT driver version string to be less than 31 chars. * [objects/gdiobj.c] Fixed DeleteObject32() to react properly when called with stock object. Fri Aug 22 18:03:26 1997 Dimitrie O. Paun <dimi@cs.toronto.edu> * [controls/updown.c] [include/updown.h] First attempt at implementiong the UpDown class. * [controls/widgets.c] Added the UpDown class to be initialized by InitCommonControls(). Wed Aug 20 18:01:33 1997 Doug Ridgway <ridgway@routh.UCSD.EDU> * [graphics/*] [objects/*] [include/gdi.h] Made all GDI objects (except DCs) moveable. Mon Aug 18 03:25:30 1997 Alex Korobka <alex@trantor.pharm.sunysb.edu> * [windows/event.c] [misc/winsock.c] [misc/winsock_dns.c] Removed IPC communication to speed up winsock services (tested only with 16-bit netscape 3.03). * [graphics/x11drv/xfont.c] [documentation/fonts] Miscellaneous improvements. Updated docs. Sun Aug 17 20:39:55 1997 Ingo Schneider <schneidi@informatik.tu-muenchen.de> * [misc/comm.c] A couple of bug fixes. Sun Aug 17 19:29:22 1997 Alexandre Julliard <julliard@lrc.epfl.ch> * [debugger/dbg.y] Display next instruction after stepi/nexti. * [if1632/relay.c] [include/callback.h] [tools/build.c] Replaced CallTo32_LargeStack with the CALL_LARGE_STACK macro for better Winelib support. * [include/sigcontext.h] Renamed to sig_context.h to avoid conflicts with libc. * [*/*] All API functions are now prefixed with WINAPI in prevision of future Winelib integration. * [loader/signal.c] [memory/ldt.c] Fixed assembly code to be -fPIC compatible. Thu Aug 14 14:38:15 1997 Marcus Meissner <msmeissn@cip.informatik.uni-erlangen.de> * [if1632/crtdll.spec][win32/except.c] _global_unwind, _local_unwind stub added. * [objects/dib.c] Don't read memory you don't even need for the target bitmap (fixes one 'lazy' program). * [if1632/relay.c][if1632/thunk.c][if1632/kernel32.spec] [win32/ordinals.c][memory/selector.c][memory/global.c] [include/callback.h] Added/moved some more win95 ordinal stuff. Implemented QT_Thunk (not 100% correct yet) and some friends. * [loader/pe_image.c] Add possibility to break at the DLL entrypoint. * [controls/static.c][misc/commdlg.c][scheduler/thread.c] Misc bugfixes and additions. * [misc/registry.c] The registry seems to be case-preserving but case-insensitive. * [memory/global.c] Adapted to new /proc/meminfo format. * [objects/font.c][graphics/x11drv/xfont.c] FONT_SelectObject and GetTextMetrics* get passed ranges in logical and not device points (thanks to Marion Reyzl for pointing this out). * [windows/caret.c] Use the windows own DC if present (The caret coordinates are logical coordinates based on it). Fixes another AMIPRO problem. Wed Aug 6 18:22:22 1997 Morten Welinder <terra@diku.dk> * [controls/menu.c] General clean-up and Win32 work: split item_flags into fType and fState; split item_id into wID and hSubMenu. Improved debug-printing. Implemented InsertMenuItem32[AW], SetMenuDefaultItem32, and SetMenuItemInfo32[AW]. Fixed GetMenuItemInfo32[AW]. * [if1632/user32.spec] Define above new functions. * [include/windows.h] Define MF_DEFAULT and MF_RIGHTJUSTIFY. Prototype above functions. * [include/menu.h] Don't prototype now-static MENU_InitSysMenuPopup. * [include/comm.h] Reduce MAX_PORTS to 9 (which the profile code can handle). Tue Aug 5 20:16:22 1997 Victor Schneider <vischne@ibm.net> * [library/winestub.c] [libtest/expand.c] These patches let people porting Windows apps compile them using the same conventions regarding global _argc and _argv as those on Windows C/C++ compilers.
174 lines
6.2 KiB
Text
174 lines
6.2 KiB
Text
|
|
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.
|
|
|
|
|