Contents for Font Editor

Microsoft Windows Font Editor (FONTEDIT.EXE) modifies existing fonts to create new fonts for your applications.

About Font Editor

Opening a Font

Editing Characters

Editing a Font

Changing Font-File Header Information


About Font Editor

You can use Font Editor to create and edit only raster fonts.

After creating a new font with Font Editor, you must add the new font to a font resource file. For information about creating adding fonts to the font resource file, see the Microsoft Windows Guide to Programming.

NOTE	You must use a mouse or similar pointing device with Font Editor.


Opening a Font

To create a new font, you must open and edit an existing font. You cannot create a new font from scratch. The font file you open must be in Windows 2.0 or 3.x format.

The Microsoft Windows Software Development Kit (SDK) disks provide two "seed" fonts that are installed in your Windows development tools directory (named \WINDEV by default). The fixed-pitch font provided is ATRM1111.FNT; the variable-pitch font is VGASYS.FNT.

After you open a font, Font Editor displays the font, a specified character, and information about the character.

The Font Editor window has the following features:

Feature	Description

Character window	Displays a copy of the character you want to edit. A grid divides the window into rectangles. Each rectangle represents a pixel.

Character-viewing window	Displays two instances of the character in its normal size. The character-viewing window makes it possible for you to examine the effects of the changes you make to the character. In this window, you can also see external character leading (the amount of vertical separation between lines of text).

Character information	Displays the Windows character value and the character width and height in pixels.

Font-viewing window	Displays normal-size copies of the characters in the font. This window is movable.

The following sections describe how to edit characters displayed in Font Editor window.


Editing Characters

You can use Font Editor to change characters. This section describes how to change characters in the following ways:

By turning individual pixels on and off

By adding and deleting columns or rows of pixels

By modifying specified blocks of pixels

By changing the width of a specified character, if the character belongs to a variable-pitch font

NOTE	When you select a different character for editing, Font Editor saves the changes you have made to the current character. If you do not want to save your edits, make sure you cancel changes by choosing the Refresh command from the Edit menu before you make the new selection.

Turning Pixels On or Off

Font Editor lets you change characters pixel by pixel. To turn a character pixel on or off, point to the pixel and click the left mouse button. To turn several pixels on or off, drag the cursor over the pixels you want to change.

Changing Rows and Columns of Pixels

Font Editor lets you copy or delete rows and columns of pixels. The Row and Column menus each contain Add and Delete commands.

Adding a Row or Column

Font Editor adds a row or column to a character by copying the row or column you select. To add a row or column, do the following:

1	Choose the Add command from the appropriate menu.

2	Select the row or column you want to add.

Font Editor duplicates the row or column selected.

When adding a new row, Font Editor inserts it between the selected row and the row immediately below it. Font Editor pushes all rows below the new row down one and deletes the row at the bottom of the Character window.

When adding a new column, Font Editor inserts it between the selected column and the column to its right. Font Editor inserts the new column, pushes all columns to its right one column to the right, and then deletes the column at the far right of the Character window.

Deleting a Row or Column

To delete a row or column of pixels, do the following:

1	Choose the Delete command from the appropriate menu.

2	Select the row or column you want to delete.

Deleting a row causes all rows below it to move up one and causes the last row in the Character window to be duplicated.

When you delete a whole column, all columns to the right of the deleted column move left one, and the column at the far right of the character window is duplicated.

Modifying Blocks of Pixels

The Fill menu provides commands that let you select and change specified blocks of pixels. The commands on the Fill menu are useful if you want to modify a large number of pixels in the same way. For example, you can select a block of pixels and fill all of them in one operation.

The Fill menu contains the following commands:

Command	Description

Clear	Changes a specified block of pixels to background pixels.

Solid	Fills a specified block with foreground pixels.

Hatched	Creates alternate foreground and background pixels in a specified block.

Inverted	Changes foreground pixels to background pixels, or vice versa, in a specified block.

Left=Right	Rotates a specified block horizontally 180 degrees.

Top=Bottom	Rotates a specified block vertically 180 degrees.

Copy	Copies pixels in a specified block to the clipboard.

Paste	Fills a specified block with pixels from the clipboard.

If you are pasting pixels from the clipboard, be sure the area of the Character window in which you want to paste is the same size as the block on the clipboard. If you try to paste your data from the clipboard into an area that is larger or smaller than the block, Font Editor tries to stretch or squeeze the block to fit.

The procedure for carrying out commands in the Fill menu is as follows:

1	Choose the relevant command from the menu.

2	Select the block of pixels you want to change.

Font Editor carries out the relevant operation on all pixels within the selected block.

Changing Character Width

Use the Width menu to change the width of a character belonging to a variable-pitch font. Commands in the Width menu change the number of columns in the character bitmap in the following ways:

Command	Description

Wider (left)	Adds a blank column to the left side of the character window.

Wider (right)	Adds a blank column to the right side of the character window.

Wider (both)	Adds a blank column to each side of the character window.

Narrower (left)	Deletes a column from the left side of the character window.

Narrower (right)	Deletes a column from the right side of the character window.

Narrower (both)	Deletes a column from each side of the character window.

NOTE	The width of a character can be changed only on variable-pitch fonts. Characters in a variable-pitch font cannot be wider than the maximum character width. If you try to make a character cell wider than the maximum character width, a dialog box appears, warning you that the maximum character width will be increased.

Storing Changes to a Character

You can store changes to a character by selecting it in the font-viewing window.

Font Editor updates the font-viewing window to show the new character.

You can also store changes to a character by making a new selection. Font Editor copies the old selection into the font buffer before copying the new selection to the Character window. This is useful if you want to continue editing characters in the same font.

Canceling Changes to a Character

To recover from an editing mistake, use either the Undo command or the Refresh command from the Edit menu.

The Undo command restores the character window to its state before the last change in the window.

The Undo command cannot cancel changes made to a character that you have stored in the buffer.

To cancel all changes you have made to a character, use the Refresh command from the Edit menu. The Refresh command replaces the current character in the character window with a copy from the font-viewing window.

NOTE	You cannot cancel changes to a character by selecting a new character. Selecting a new character, or reselecting the current character, causes Font Editor to store all changes to the character in the font buffer. Only the Refresh command cancels changes.


Editing a Font

To change the height, width, and Windows value of the first and last character in a font, choose the Size command from the Font menu. The command displays the Size dialog box, which contains the following controls:

Option	Description

Character Pixel Height	Defines the height (in pixels) of the characters in the font.

Maximum width (variable-pitch fonts only)	Defines the width (in pixels) of the widest possible character in a variable-pitch font.

Character Pixel width (fixed-pitch fonts only)	Defines the width (in pixels) of all characters in a fixed-pitch font. In fixed-pitch fonts all characters have equal width.

First Character	Defines the character value (for example, the Windows character value) of the first character in the font. The first character is the character to the far left when you scroll the contents of the font-viewing window to the far right.

Last Character	Defines the character value (for example, the Windows character value) of the last character in the font. The last character is the character to the far right when you scroll the contents of the font-viewing window to the far left.

Pitch	Defines the font as either a fixed-pitch font or variable-pitch font.

You can change a font from fixed-pitch to variable-pitch by selecting Variable in the Size dialog box. You cannot change a variable-pitch font to fixed-pitch.

Weight	Lists options that define the font weight, ranging from thin to heavy. Each option represents a specific degree of heaviness (i.e., thickness of stroke) of the font. The options are mutually exclusive.


Changing Font-File Header Information

To change the information in the font file header, choose the Header command from the Font menu. The Header command displays the Header dialog box, which contains the following information about the font:

Item	Description

File Name	The name of the font file being edited.

Face Name	The name used to distinguish the font from other fonts. It is not necessarily the same as the font filename. The face name can be as many as 32 characters in length.

Copyright	Either a copyright notice or additional information about the font. It can be as many as 60 characters in length.

Nominal Point Size	The point size of the characters in the font. One point is equal to approximately 1/72 of an inch.

Height of Ascent	The distance (in pixels) from the top of an ascender to the baseline.

Nominal Vert. Resolution	The vertical resolution at which the characters were digitized.

Nominal Horiz. Resolution	The horizontal resolution at which the characters were digitized.

External Leading	The pixel height of the external leading. External leading is the vertical distance (in rows) from the bottom of one character cell to the top of the character cell below it. The Character-viewing window shows two copies of the character, one above the other, so that you can see the effect of the leading.

Internal Leading	The pixel height of the internal leading. Internal leading is typically vertical distance (in rows) within a character cell above the top of the tallest letter; marks such as accents, umlauts, and tildes for capital letters sometimes appear inside this space.

Default Character	The character value of the default character. The default character is used whenever your application tries to use a character that does not exist in the font.

Break Character	The character value of the break character. The break character is used to pad lines that have been justified. The break character is typically the space character.

Note	In the Windows font file format for raster and vector fonts, the default-character and break-character values are offsets and do not contain the actual character values. For more information, see Microsoft Windows Guide to Programming.

Character Set	These options define the character set. The ANSI (Windows) character set (value zero) is the default Windows character set. The OEM character set (value 255) is machine-specific. The SYMBOL character set (value 2) contains special characters typically used to represent mathematical and scientific formulas. The number to the right of these options defines the character set. It can be any value from 0 to 255, but only 0, 2, and 255 have a predefined meaning.

Italic	Defines an italic font.

Underline	Defines an underlined font.

Strikeout	Defines a font whose characters have been struck out.

Font Family	The family to which the font belongs. Font families define the general characteristics of the font as follows:

Family name	Description

Roman	Proportionally-spaced fonts with serifs (Times® Roman, Century Schoolbook, Bodoni, for example).

Modern	Fixed-pitch fonts (Pica, Elite, Courier, for example).

Swiss	Proportionally-spaced fonts without serifs (Helvetica®, Univers®, Swiss™, for example).

Decorative	Novelty fonts.

Script	Cursive or script fonts.

Dontcare	Custom font.