Radoslaw Przybyl and Adam Twardoch have just announced the release of a beta version of WGL Assistant. The utility allows convenient use of the multilingual (Unicode/WGL4) TrueType and OpenType fonts in all Windows applications.
ANNOUNCEMENT: WGL ASSISTANT V1.1 BETA AVAILABLE
WGL Assistant v1.1
The Multilingual Font Manager
WGL Assistant allows convenient use of the multilingual (Unicode/WGL4) TrueType and OpenType fonts in all MS Windows applications.
This program is available for public beta testing:
Beta testers are requested to proof-read the existing language versions (especially Dutch and French) and to add new ones (e.g. Russian, Czech, Spanish, Italian). Please submit LangRes.ini files. Texts should be encoded in the appropriate Windows codepages (e.g. 1252 for Spanish and Italian, 1250 for Czech and 1251 for Russian).
Testers are also welcome to submit additions/revisions to the documentation (currently available in English only).
Please send bug reports and feature wishes to: firstname.lastname@example.org
The program will be released as shareware. Engaged bug hunters will receive a free license.
Details (excerpts from the documentation):
TrueType fonts used in Microsoft Windows 3.1 initially contained only the characters from the Latin-1 (CP 1252) codepage. But the TrueType font technology allows many more characters in a single font. Microsoft decided to encode the characters according to the Unicode standard. But most of the applications were not yet programmed to work with such fonts. Even if a font contained many characters, the applications could only use 256 characters of each font.
In Microsoft Windows 3.1, characters for each codepage had to be stored in a separate font. A user desiring to switch from English to Cyrillic to Greek while typing would have to choose three different fonts: Times New Roman, Times New Roman Cyr, and Times New Roman Greek.
In Microsoft Windows NT 3.1, some Unicode functionality was included in the system. Thus a particular application could address all characters contained in a TrueType font, not only the first 256 of them. Unfortunately few developers wrote compliant programs, so Unicode didn't become popular at that time. Nevertheless, Windows NT was the first Microsoft system which included multilingual TrueType fonts, containing characters for more than one codepage.
In 1995, Microsoft Windows 95 was introduced. It supported a subset of Unicode which included characters required by Western, Central, and Eastern European writing systems, plus characters required by Greek and Turkish. This so-called PanEuropean character set contained 652 characters and was called WGL4: Windows Glyph List 4.
There are various ways in which applications may access the extended characters (>256) included in the multilingual TrueType fonts.
Applications which are Unicode-compliant use double-byte text encoding to store the text and may address the extended characters directly. Currently there are only few such applications (e.g. Microsoft Word 97 and Word 2000, Adobe InDesign, MGI Calamus Publisher 2.0) yet the number is slowly growing.
To make the use of multilingual fonts in non-Unicode applications easier, Microsoft introduced a mechanism which allowed the user to choose a single WGL4 font, and change codepages as needed. In order to use this codepage selection mechanism, applications were supposed to use the system font selector.
Most applications still use the old Windows 3.1-style font enumeration, listing the installed system fonts including so-called font substitutes (or: font aliases). These are the entries in the [FontSubstitutes] section of the Windows 95/98 win.ini file or the Windows NT 4.0 registry.
Although the font aliasing mechanism is quite hacky (every change requires a Windows restart), there is one interesting feature about this mechanism. By entering a line:
a "virtual font" named Arial CE is being installed, which contains all characters of the Central European script of the Arial font. Non-WGL4 applications can now access the Polish, Czech, Slovak etc., characters in the Arial CE "virtual" font using the codes of the Windows 1250 codepage.
Analogically, following entries may be made:
Our program, WGL Assistant, helps the user to manage the multilingual entries in the font substitutes section.
WGL Assistant allows you to easily enable and disable the codepages globally, or for each multilingual font installed on the system.
When you enable a codepage, a new virtual font (font substitute) will be added for such codepage. The new virtual font will retain the name of the original font, but a short suffix will be added. For example, if you enable Arial (Central European), the following entry will be added into the [FontSubstitutes] section of the win.ini file (Windows 95/98) or of the registry (Windows NT):
You can also remap the Western codepage of a font without adding the suffix. Instead of creating a new virtual font, the existing font will be remapped, so that a codepage of your choice becomes the primary codepage of that font. This is useful if you prefer a codepage different than Western, or if the application doesn't list the "virtual" fonts (Arial CE, Arial Cyr etc.). This can also be used to write a non-Latin-1 document in a non-Unicode aplication and then import it into a Unicode-savvy application. WGL Assistant allows you to make such substitutions, which will appear as follows:
Unfortunately, Windows must be restarted to activate the changes every time, due to a limitation of Windows, not of WGL Assistant.
WGL Assistant has two font preview modes: a simple preview and an extended preview. The font preview feature is designed for optimal use with multilingual fonts. Each codepage can be previewed with a different sample text. A set of pre-defined sample texts is included, optimized for each codepage. Each sample text shows most common diacritical characters used in the languages of the specific codepage.
The user can easily add custom preview texts.
WGL Assistant not only helps you to manage multilingual fonts, but it also has a multi-language user interface. You can easily switch between different program dialog languages. Currently, the Dutch, English, French, German and Polish languages are supported, but further languages may be added in future. The user can easily add or modify dialog languages.
Please refer to the full documentation for further details.
Adam Twardoch <email@example.com>
WGL Assistant Web Page: http://www.cdrom.pl/wgl/