Windows 3.11 Font Mapping System File
In Microsoft Windows 3.11, the system file responsible for specifying
application font mapping rules is WIN.INI. This article
explains the role of WIN.INI in font substitution, details
how the internal font mapper utilized this file to match requested fonts
with installed typefaces, and highlights the specific configuration
section that governed these rules.
The Role of WIN.INI
During the 16-bit era of Windows, system configuration was divided
primarily between two initialization files: SYSTEM.INI and
WIN.INI. While SYSTEM.INI controlled hardware
drivers, display adapters, and core operating environment parameters,
WIN.INI managed user environment preferences, desktop
appearance, and application interoperability settings. Within this
architecture, font matching and font mapping rules fell strictly under
the jurisdiction of WIN.INI.
The [FontSubstitutes] Section
Font mapping in Windows 3.11 was configured within the
[FontSubstitutes] section of WIN.INI. This
section contained explicit pairing instructions that told the Windows
Graphics Device Interface (GDI) which available font to substitute when
an application requested a typeface that was not locally installed.
Common default entries in the [FontSubstitutes] section
included:
Helv=MS Sans SerifTms Rmn=MS SerifTimes=Times New RomanHelvetica=Arial
These mappings ensured backward compatibility with earlier Windows versions and documents created on other platforms, such as the Apple Macintosh, which relied on standard PostScript font names like Helvetica and Times.
How the Windows Font Mapper Used the File
When an application requested a font via the Windows GDI (such as
calling CreateFont or CreateFontIndirect), the
Windows Font Mapper evaluated the request:
- Exact Match Check: The system checked if the
requested typeface name was already installed in the system font table
(also defined under the
[Fonts]section ofWIN.INI). - Consulting Substitutions: If the requested font was
missing, the Font Mapper inspected
[FontSubstitutes]inWIN.INI. If a rule matched the missing font name, the GDI substituted the replacement font name. - Attribute Weighting: If no direct substitution rule existed, the Font Mapper used an internal penalty algorithm to choose the closest match based on family, pitch, weight, and character set.
By editing the WIN.INI file directly or through
configuration utilities, system administrators and users could customize
these mappings to redirect missing or legacy document fonts to existing
TrueType or raster alternatives.