home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / fonts / fed211.zip / FONTEDIT.DOC < prev    next >
Text File  |  1993-09-06  |  112KB  |  2,663 lines

  1.           FONTEDIT, (C) by Alexander Walter                      Page 1
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.                                     FONTEDIT
  32.  
  33.                                   version 2.11
  34.  
  35.  
  36.  
  37.                                  Copyright 1993
  38.  
  39.                                 Alexander Walter
  40.  
  41.  
  42.  
  43.           FONTEDIT, (C) by Alexander Walter                      Page 2
  44.  
  45.  
  46.  
  47.                                 TABLE OF CONTENTS
  48.  
  49.  
  50.  
  51. 1.  Acknowledgments......................................................4
  52. 2.  Miscellany...........................................................4
  53. 3.  Requirements and Limitations.........................................4
  54. 4.  Introduction and Features............................................5
  55. 5.  Guide to Operation...................................................6
  56. 5.1.  Basic Screen Layout................................................8
  57. 5.1.1.  Guidelines.......................................................8
  58. 5.2.  Main Menu..........................................................9
  59. 5.2.1.  Pixel Edit......................................................10
  60. 5.2.1.1.  Image Transforms..............................................11
  61. 5.2.1.1.1.  Invert......................................................12
  62. 5.2.1.1.2.  Hollow......................................................12
  63. 5.2.1.1.3.  Thinner.....................................................12
  64. 5.2.1.1.4.  Mirror Image................................................12
  65. 5.2.1.1.5.  Upside-Down.................................................12
  66. 5.2.1.1.6.  Slant.......................................................13
  67. 5.2.1.1.7.  Tilt........................................................13
  68. 5.2.1.1.8.  Drop Shadow.................................................13
  69. 5.2.1.1.9.  Resize......................................................13
  70. 5.2.1.1.10.  Counterclockwise...........................................14
  71. 5.2.1.1.11.  Bolder.....................................................14
  72. 5.2.1.1.12.  Bold/Thin Option...........................................14
  73. 5.2.1.2.  Area Operators................................................15
  74. 5.2.1.2.1.  Polygon Fill & Clear........................................15
  75. 5.2.1.2.1.1.  Bezier Curve..............................................17
  76. 5.2.1.2.2.  Rectangle Fill & Clear......................................18
  77. 5.2.1.2.3.  Ellipse & Wedge Fill / Clear................................19
  78. 5.2.1.2.4.  Parallelogram Fill & Clear..................................21
  79. 5.2.1.2.5.  Pixel Edit..................................................21
  80. 5.2.1.3.  Clear Character...............................................21
  81. 5.2.1.4.  Row/Col Ins/Del...............................................21
  82. 5.2.1.4.1.  Trim........................................................22
  83. 5.2.1.4.2.  Expand......................................................23
  84. 5.2.1.5.  Cut & Paste...................................................23
  85. 5.2.1.6.  Adjust Kerning................................................25
  86. 5.2.1.7.  Quit & Save...................................................25
  87. 5.2.1.8.  Toggle Pixel..................................................26
  88. 5.2.1.9.  Quit, no Save.................................................26
  89. 5.2.2.  Zoom / Unzoom...................................................26
  90. 5.2.3.  Font Operators..................................................26
  91. 5.2.3.1.  New Cell Width................................................27
  92. 5.2.3.2.  New Cell Height...............................................27
  93. 5.2.3.3.  Create New Font...............................................28
  94. 5.2.3.4.  Make Landscape / Make Portrait................................28
  95. 5.2.3.5.  Make Fixed Width / Make Propor................................28
  96. 5.2.3.6.  New Pitch (HMI)...............................................28
  97. 5.2.3.7.  New VMI.......................................................29
  98. 5.2.3.8.  New Point Size................................................29
  99. 5.2.3.9.  Move Baseline.................................................29
  100. 5.2.3.10.  Move Underline...............................................30
  101.           FONTEDIT, (C) by Alexander Walter                      Page 3
  102.  
  103.  
  104.  
  105. 5.2.3.11.  Main Menu....................................................30
  106. 5.2.3.12.  New Symbol Set...............................................30
  107. 5.2.3.13.  New Typeface.................................................30
  108. 5.2.3.14.  New Font Comment.............................................31
  109. 5.2.3.15.  Bold/Thin Option.............................................31
  110. 5.2.3.16.  Trim All.....................................................31
  111. 5.2.3.17.  Expand All...................................................31
  112. 5.2.3.18.  Resize All...................................................31
  113. 5.2.3.19.  Counterclockwise.............................................32
  114. 5.2.3.20.  Invert.......................................................32
  115. 5.2.3.21.  Hollow.......................................................32
  116. 5.2.3.22.  Thinner......................................................32
  117. 5.2.3.23.  Mirror Image.................................................32
  118. 5.2.3.24.  Upside-Down..................................................33
  119. 5.2.3.25.  Slant........................................................33
  120. 5.2.3.26.  Tilt.........................................................33
  121. 5.2.3.27.  Drop Shadow..................................................33
  122. 5.2.3.28.  Bolder.......................................................34
  123. 5.2.3.29.  Start ASCII..................................................34
  124. 5.2.4.  Replicate.......................................................34
  125. 5.2.5.  New Font........................................................34
  126. 5.2.6.  Create New Char.................................................35
  127. 5.2.7.  Delete Character................................................35
  128. 5.2.8.  Printer Support.................................................36
  129. 5.2.8.1.  Download Font.................................................36
  130. 5.2.8.2.  Print File....................................................36
  131. 5.2.8.3.  Echo Text.....................................................36
  132. 5.2.8.4.  Eject Page....................................................37
  133. 5.2.8.5.  Select Font ID................................................37
  134. 5.2.8.6.  Built-in Fonts................................................37
  135. 5.2.9.  Import TIFF.....................................................37
  136. 5.2.10.  Quit...........................................................38
  137. 5.2.11.  VGA Text Colors................................................39
  138. 5.2.12.  Exp. Factors...................................................39
  139. 5.2.13.  <Print Shop Icon...............................................40
  140. 5.2.14.  Import PCX.....................................................40
  141. 5.2.15.  Import Soft Font...............................................40
  142. 5.2.16.  Pick ASCII.....................................................41
  143. 6.  Tips................................................................41
  144. 6.1.  Scanning and Importing Graphics...................................41
  145. 6.2.  Very Large Point Sizes............................................42
  146. 6.3.  Using Bitmapped Printer Fonts with Windows 3.1  ..................43
  147. 7.  Troubleshooting.....................................................44
  148. 7.1.  Before Starting FONTEDIT..........................................44
  149. 7.2.  While Running FONTEDIT............................................45
  150. 7.3.  Error Codes.......................................................45
  151. 8.  Sample Session......................................................46
  152. 8.1.  Gantt Milestone Character.........................................46
  153. 8.2.  Registered Trademark Symbol.......................................47
  154.  
  155.           FONTEDIT, (C) by Alexander Walter                      Page 4
  156.  
  157.  
  158.  
  159. 1.  Acknowledgments
  160.  
  161. FONTEDIT is copyright 1993 by Alexander Walter. All rights reserved. The
  162. purchaser may make one copy for backup or archival purposes.
  163.  
  164. The run-time files BRUN45.EXE and MSHERC.COM are copyrighted by Microsoft and
  165. are distributed with this package in accordance with the QuickBasic 4.5
  166. licensing agreement.
  167.  
  168. Portions (c) Copyright Genus Microprogramming, Inc. 1988-1991. This bit of
  169. legalese is required by Genus since FONTEDIT uses their PCX toolkit to
  170. support importing characters from PCX images.
  171.  
  172.  
  173.  
  174. 2.  Miscellany
  175.  
  176. This is version 2.11 of FONTEDIT. FONTEDIT is available by sending a $30
  177. check or money order to:
  178.  
  179.                                Alexander Walter
  180.                                  182 ILER Dr.
  181.                             Middletown, NJ.  07748
  182.  
  183. toll free phone support is available at (800) 262-0827 in USA only.
  184. Otherwise, call (908) 671-5080 or (908) 949-0507.
  185.  
  186. If you encounter any problems or bugs with FONTEDIT, please report them to
  187. the author along with a description of the steps that led up to it. If you
  188. have any suggestions for new features, pass them along. A version of FONTEDIT
  189. for the HP DeskJet printer is also available.
  190.  
  191. Section 5 of this manual is organized along the lines of the menu structure.
  192. Items which are submenu items will have a paragraph number which has one more
  193. digit than its parent menu item.
  194.  
  195.  
  196.  
  197. 3.  Requirements and Limitations
  198.  
  199. FONTEDIT requires a graphics display, CGA or higher. A Hercules graphics
  200. display can be used provided you run the MSHERC.COM TSR before running
  201. FONTEDIT.
  202.  
  203. FONTEDIT requires DOS 2.1 or above, and approximately 256K of available RAM,
  204. i.e., memory not used by DOS or TSRs. FONTEDIT can be run from one floppy
  205. disk drive; however, since HP font files can be large, hard disk usage is
  206. recommended.
  207.  
  208. The font file being edited with FONTEDIT must be of the HP LaserJet bitmapped
  209. format. This includes Series II and above. Postscript font files are not
  210.  
  211.           FONTEDIT, (C) by Alexander Walter                      Page 5
  212.  
  213.  
  214.  
  215. supported. Outline fonts available in the LaserJet III are not yet supported;
  216. however, the LaserJet III will still accept bitmapped fonts. You cannot
  217. change the built-in Courier and TTY fonts of the laser printer.
  218.  
  219. Although FONTEDIT cannot edit TrueType fonts directly, it can edit bitmap
  220. renditions of TrueType fonts at given point sizes. When Windows 3.1 prints a
  221. document with a LaserJet driver, it will render the TrueType font(s) as
  222. bitmap fonts in the various point sizes used in the document and download
  223. them to the printer. If you print to a disk file rather than the printer,
  224. FONTEDIT will allow you to edit the bitmap renditions of those TrueType
  225. fonts. Registered users can obtain a program to strip out the non-font data
  226. from the file, leaving only the bitmap renditions of the TrueType fonts.
  227.  
  228. If you use any compression programs to reduce the size of font files stored
  229. on disk, they must be uncompressed before editing then with FONTEDIT. This
  230. dows not pertain to the DbleSpace disk compression that comes with MS-DOS
  231. version 6.0.
  232.  
  233. If you use the DOS access feature available by pressing ALT-D, be sure to
  234. include in your DOS PATH the directory containing FONTEDIT.
  235.  
  236. If you run FONTEDIT at a Windows 3.1 DOS prompt on a network, you won't be
  237. able to use the printer related functions such as downloading a font or
  238. printing something. However, you still will be able to edit a font on-screen.
  239.  
  240.  
  241.  
  242. 4.  Introduction and Features
  243.  
  244. FONTEDIT is a tool to view and edit laser printer soft font files for the
  245. Hewlett-Packard laser printer. Such a tool can be used to touch-up existing
  246. characters in a file, define special characters in a font file, or create an
  247. entirely new fontface. For example, using FONTEDIT you could add Greek
  248. characters to a font file you already have; you could define special
  249. characters such as the Gantt chart symbols used by Timeline and other project
  250. management software; or you could produce a stylized version of your
  251. company's name or logo.
  252.  
  253. FONTEDIT has a rich set of features for editing fonts:
  254.  
  255.   -  Can view and edit both portrait and landscape fonts, and convert one to
  256.      the other.
  257.   -  Handles both fixed-width and proportional fonts, and can convert one to
  258.      the other.
  259.   -  Automatically detects a mouse if present and uses it.
  260.   -  Requires only CGA graphics. Will detect and use EGA or VGA if available.
  261.   -  Maximum point size depends on display mode. Maximum 110 point (VGA); 80
  262.      point (EGA & Hercules); 44 point (CGA); or 88 point (AT&T video mode)
  263.   -  Allows both pixel-level editing of individual characters and fill &
  264.      clear area operations (rectangle, parallelogram, circle, ellipse,
  265.           FONTEDIT, (C) by Alexander Walter                      Page 6
  266.  
  267.  
  268.  
  269.      wedge, arbitrary polygon, Bezier curves).
  270.   -  Can change font parameters, such as maximum height & width, baseline,
  271.      symbol set, typeface value, and embedded font comment.
  272.   -  Can resize the font up or down to any arbitrary point size, up to the
  273.      maximum allowable for the display adaptor, and smooths characters while
  274.      doing so.
  275.   -  Can resize individual characters while smoothing and maintaining their
  276.      original shape.
  277.   -  Can perform special effects (drop shadow, mirror image, rotate, upside
  278.      down, invert, hollow, thin, bolder, etc.) either one character at a time
  279.      or font-wide.
  280.   -  Has a clipboard to allow cutting and pasteing portions of a character
  281.      either within the same character, or to another character.
  282.   -  Can insert or delete rows and columns of individual characters.
  283.   -  Can import characters from black & white TIFF or PCX graphics.
  284.   -  Can import characters from another font.
  285.   -  Can import PrintShop icon graphics.
  286.   -  Can change intercharacter spacing (kerning) of proportional fonts
  287.   -  Can add and delete characters from a font.
  288.   -  Zoom mode available for close-ups.
  289.   -  Includes printer support within the FONTEDIT environment to see the
  290.      effect of editing changes, or to do a graphics print screen.
  291.   -  Handles font files which consist of several fonts grouped together.
  292.   -  Menu-driven user interface, available at all times.
  293.   -  Built-in DOS access.
  294.   -  On some VGA monitors, the text colors can be customized.
  295.  
  296.  
  297.  
  298. 5.  Guide to Operation
  299.  
  300. To begin shareware version 2.11 of FONTEDIT, simply type "fed21" at the DOS
  301. prompt. You may follow it with the name of the font file to edit. If you
  302. don't, FONTEDIT will ask you to supply a font filename.
  303.  
  304. FONTEDIT requires only a CGA adaptor, but will automatically detect and use
  305. the higher resolution of a VGA, EGA, or AT&T adaptor if available. This can
  306. be overridden by including a switch either on the command line or when
  307. specifying the font filename to edit. For instance, if an EGA monitor is
  308. being used but you want to take advantage of the faster graphics and lower
  309. memory requirements of CGA mode, you can force CGA mode when beginning
  310. FONTEDIT by typing:
  311.  
  312.                               fed21 filename /cga
  313.  
  314. To force EGA mode while using a VGA adaptor, use "/ega".
  315.  
  316. To use a Hercules graphics board, run the MSHERC.COM TSR program before
  317. starting FONTEDIT. MSHERC.COM is (C) by Microsoft, and is distributed here in
  318. accordance with the QuickBasic 4.5 licensing agreement.
  319.  
  320.  
  321.           FONTEDIT, (C) by Alexander Walter                      Page 7
  322.  
  323.  
  324.  
  325. If you see the message "Input run-time module path:" when you start FONTEDIT,
  326. quit with Ctrl-C, and make sure that the run time module BRUN45.EXE is in
  327. either the current directory, or a directory in your DOS PATH.
  328.  
  329. While you are prompted for a filename, FONTEDIT displays a message whether a
  330. mouse driver is installed or not. If you have a mouse but have forgotten to
  331. install the driver, you can exit FONTEDIT at this point by pressing ESC.
  332.  
  333. Either on the command line or when FONTEDIT asks for a filename, you may
  334. supply a filename containing wildcards (*,?) and, optionally, a drive
  335. designator. FONTEDIT responds with a list of matching filenames from which
  336. you can point and shoot with a mouse. If a mouse is not installed, you can
  337. choose a filename by moving the reverse-video highlight with the arrow keys
  338. and pressing Enter. If a drive designator is not specified, the default drive
  339. is used. If you make a mistake in the wildcards, you can press Space Bar and
  340. reenter the wildcards or a filename.
  341.  
  342. When a font file has been chosen, FONTEDIT will create a backup copy of the
  343. font file, giving it the extension ".BAK".
  344.  
  345. If there is insufficient room left on the disk drive, FONTEDIT will give a
  346. caution and stop. The free space required on the disk with the font file must
  347. be at least as much as the original size of the font file. This is calculated
  348. after the backup file has been created.
  349.  
  350. If the overlay file HELV9B.EXE is not in the current directory or in one of
  351. the directories in your DOS PATH, you will be prompted to enter the pathname
  352. to it.
  353.  
  354. After loading the font file, if it contains multiple font definitions you
  355. will be asked which font you want to view and edit; after you answer you will
  356. see the main menu (described below). If the font file contains only one font
  357. definition, you will immediately be at the main menu. If ASCII 65 (capital
  358. "A") is defined for the font file you are editing, it will be displayed.
  359.  
  360. At any point after the file is loaded, you may temporarily escape to DOS by
  361. pressing Alt-D. Be sure that your path includes the FONTEDIT subdirectory
  362. when using the DOS access feature. You can also dump the screen to a laser
  363. printer by pressing Alt-P.
  364.  
  365. The section below describing the Main Menu describes how to select a
  366. character to view on screen, including those ASCII values that don't have a
  367. keyboard equivalent.
  368.  
  369. Upon completion of editing, saving of your work, and exiting FONTEDIT, you
  370. can download to your printer the newly edited font file. Normally, this is
  371. done by using whatever font downloading utilities you usually use.
  372. Optionally, while editing your font file you can download it to the laser
  373. printer from within FONTEDIT, and print either a text file from disk or echo
  374. keyboard input to the printer using the font. This is described further
  375. later.
  376.  
  377.           FONTEDIT, (C) by Alexander Walter                      Page 8
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384. 5.1.  Basic Screen Layout
  385.  
  386. The basic screen layout is a status line at the top; on the top right are the
  387. menu choices available via the Function Keys, RETURN, or ESC; on the middle
  388. right is information about the font being edited; and on the bottom right is
  389. information about the displayed character. In VGA mode, the lower right
  390. corner of the screen shows Alt-key definitions and the filename being edited.
  391. The rest of the screen is used to display a magnified version of the
  392. characters. At times the bottom line is used for messages.
  393.  
  394. The displayed character and the border around it is referred here as the
  395. character box. The character box is surrounded by a larger box which is
  396. referred here as the cell box. The cell box denotes the largest character
  397. size which any character in this font can be. The information area on the
  398. right of the screen shows the size of the cell box and character box. The
  399. size of the cell box can be changed under the Font Operators menu.
  400.  
  401. The magnification factor used to display the characters is automatically
  402. chosen at start-up to provide a size which fills up the screen as much as
  403. possible while maintaining a "pleasing" ratio of width to height. The
  404. character box is displayed with grid lines superimposed as an editing guide.
  405. If the magnification is such that the character box would become congested
  406. while the grid lines are displayed, the grid lines are suppressed.
  407.  
  408. If zoom mode is active (described in a subsequent section), the cell box is
  409. suppressed and the character box is displayed so that it takes up as much of
  410. the screen as possible.
  411.  
  412.  
  413.  
  414. 5.1.1.  Guidelines
  415.  
  416. Four guidelines are displayed for each character of portrait fonts when not
  417. in zoom mode. They are the baseline, x-height, M-height, and p-height. To
  418. help distinguish them, they are drawn with different line styles. The
  419. baseline is a more solid dashed line, the M-height is a less solid dashed
  420. line, and the x-height and p-height are dotted lines.
  421.  
  422. The M-height is drawn through the upper pixel row of the letter "M". If the
  423. letter "M" is not defined in the font, the height of the first upper case
  424. letter defined in the font is used. If there are no upper case letters in the
  425. font, no M-height is drawn.
  426.  
  427. The x-height is drawn through the upper pixel row of the letter "x". If the
  428. letter "x" is not defined in the font, the height of the first lower case
  429. letter without an ascender defined in the font is used. If there are no such
  430. letters in the font, no x-height is drawn. This guideline does not depend on
  431. the x-height field in the font header, which is ignored anyways by the
  432.  
  433.           FONTEDIT, (C) by Alexander Walter                      Page 9
  434.  
  435.  
  436.  
  437. LaserJet in a bitmapped font.
  438.  
  439. The p-height is drawn through the lowest pixel row of the letter "p". If the
  440. letter "p" is not defined in the font, the lowest row of one of the letters
  441. "g", "j", "q", or "y" is used. If none of these letters are defined in the
  442. font, no p-height is drawn.
  443.  
  444. The baseline is drawn through the pixel row indicated by the baseline field
  445. in the font header. This field can be changed under the Font Operations menu.
  446. When changing the baseline, it may be necessary to change the cell height
  447. first.
  448.  
  449. When editing a letter upon which a guideline is based (e.g., normally "M",
  450. "p", and "x"), the guideline positions are updated as soon as the edited
  451. character is saved.
  452.  
  453.  
  454.  
  455. 5.2.  Main Menu
  456.  
  457. The status message at the top of the screen says "Press a character to
  458. display it." The main menu changes with pressing either the SHIFT or CTRL
  459. keys. This reflects how the F-key definitions change when SHIFT or CTRL is
  460. pressed. The available menu options are shown below.
  461.  
  462.  
  463. NO SHIFT or CTRL             SHIFT only                CTRL only
  464. -------------------------    ----------------------    ---------------------
  465.   F2 = Pixel Edit            F2 = VGA Text Colors(3)   F2 =
  466.   F3 = Zoom(1)               F3 = Exp. Factors         F3 =
  467.   F4 = Font Operators        F4 =                      F4 =
  468.   F5 = Replicate             F5 =                      F5 =
  469.   F6 = New Font(2)           F6 =                      F6 =
  470.   F7 = Create New Char.      F7 =                      F7 =
  471.   F8 = Delete Character      F8 =                      F8 =
  472.   F9 = Printer Commands      F9 = Print Shop Icon      F9 =
  473.   F10= Import TIFF           F10= Import PCX           F10= Import Soft Font
  474.   RET=                       RET=                      RET= Pick ASCII
  475.   ESC= Quit                  ESC= Quit                 ESC= Quit
  476.  
  477. notes:
  478.  
  479.   1.  If already in Zoom mode, this will say "Unzoom".
  480.   2.  This choice shown only if the font file defines more than one font.
  481.   3.  Shown only in VGA mode.
  482.  
  483.  
  484. At this point you can either begin to operate on the character displayed, or
  485. press a letter key to display that character. If the ASCII value
  486. corresponding to the key you pressed is not defined in the font, there will
  487. be no response. There are two ways to display any ASCII characters defined in
  488.  
  489.           FONTEDIT, (C) by Alexander Walter                      Page 10
  490.  
  491.  
  492.  
  493. your font file, including those such as ASCII 127 which don't have an
  494. associated key on the keyboard. One way is to press and hold the ALT key,
  495. type the 3-digit ASCII value on the numeric keypad, then release the ALT key.
  496. Since some keyboards don't have a numeric keypad, another way to display a
  497. character which doesn't have a keyboard equivalent is to use the Pick ASCII
  498. menu choice (CTRL-Enter).
  499.  
  500. The right or down arrow keys can also be used to scroll to the next ASCII
  501. value in the font. The up or left arrow keys can be used to scroll to the
  502. previous ASCII value in the font. The selection will wrap at the first or
  503. last ASCII values.
  504.  
  505. Pressing ALT-Z (for zoom) at the Main Menu or the Pixel Edit menu can also be
  506. used to toggle zoom mode on and off.
  507.  
  508.  
  509.  
  510. 5.2.1.  Pixel Edit
  511.  
  512. Pixel Edit is a choice from the main menu, and operates on the character
  513. displayed. Upon entering the edit mode, the status message at the top of the
  514. screen says either:
  515.  
  516.     "Pixel Editing.   Left Button: Set Pixel    Right Button: Clear Pixel"
  517.  
  518. if a mouse is installed, or:
  519.  
  520.              "Pixel Editing.    Use arrow keys to move crosshairs"
  521.  
  522. if no mouse is installed. The following menu choices are displayed:
  523.  
  524.   F2 = Image Transforms
  525.   F3 = Area Operators
  526.   F4 = Clear Character
  527.   F5 = Row/Col Ins/Del
  528.   F6 = Cut & Paste
  529.   F7 = Adjust Kerning(1)
  530.   F10= Quit & Save
  531.   RET= Toggle pixel(2)
  532.   ESC= Quit, no save
  533.  
  534. notes:
  535.  
  536.   1. This menu choice shown only for proportional fonts.
  537.   2. This menu choice shown only if no mouse is installed.
  538.  
  539.  
  540. At this point, the mouse arrow cursor will be visible if a mouse is
  541. installed. If no mouse is installed, you will see a crosshair. Both the
  542. crosshair and mouse can be moved one pixel at a time with the arrow keys, or
  543. in larger increments by using the PgUp, PgDn, Tab, and Shift-Tab keys. You
  544.  
  545.           FONTEDIT, (C) by Alexander Walter                      Page 11
  546.  
  547.  
  548.  
  549. can begin editing individual pixels by either moving the mouse arrow and
  550. clicking, or by moving the crosshair and pressing RETURN to toggle the pixel
  551. underneath on or off.
  552.  
  553. If you experience erratic mouse behavior while pixel editing, you may need to
  554. update your mouse driver. FONTEDIT works fine with Microsoft mouse version
  555. 8.20a. This version of the mouse driver is available upon request by
  556. registered users.
  557.  
  558. At the Pixel Edit menu, zoom mode can be toggled on and off by pressing
  559. ALT-Z.
  560.  
  561. If zoom mode is not in effect, the character box can be moved around within
  562. the cell box by pressing Ctrl-Up, Ctrl-Down, Ctrl-Left, or Ctrl-Right. If
  563. your keyboard has two sets of arrow keys, the arrow keys on the numeric
  564. keypad must be used. As you move the character, the left offset and top
  565. offset are updated in the character information display.
  566.  
  567.  
  568.  
  569. 5.2.1.1.  Image Transforms
  570.  
  571. Image Transforms is a choice from the pixel edit menu, and performs a set of
  572. special effects on the character displayed. Upon entering Image Transforms,
  573. the status message at the top of the screen says:
  574.  
  575.                   "Image Transforms.   Press SHIFT for more."
  576.  
  577. The following menu choices are displayed:
  578.  
  579. NO SHIFT or CTRL             SHIFT only                CTRL only
  580. -------------------------    ----------------------    ---------------------
  581.   F2 = Invert                F2 = Resize(3)            F2 =
  582.   F3 = Hollow                F3 = Counterclockwise(3)  F3 =
  583.   F4 = Thinner               F4 = Bolder               F4 = Bold/Thin Option
  584.   F5 = Mirror Image          F5 =                      F5 =
  585.   F6 = Upside-Down           F6 =                      F6 =
  586.   F7 = Slant(1)              F7 =                      F7 =
  587.   F8 = Tilt(1)               F8 =                      F8 =
  588.   F9 = Drop Shadow(1)        F9 =                      F9 =
  589.   F10=                       F10=                      F10=
  590.   RET= Toggle Pixel(2)       RET=                      RET=
  591.   ESC= Pixel Edit Menu       ESC= Pixel Edit Menu      ESC= Pixel Edit Menu
  592.  
  593. notes:
  594.  
  595.   1. Slant, Tilt, and Drop Shadow choices shown only when not in zoom mode.
  596.   2. This menu choice shown only if no mouse is installed.
  597.   3. Resize & Counterclockwise choices shown only when not in zoom mode.
  598.  
  599.  
  600.  
  601.           FONTEDIT, (C) by Alexander Walter                      Page 12
  602.  
  603.  
  604.  
  605.  
  606. 5.2.1.1.1.  Invert.
  607.  
  608. This is chosen from the Image Transforms menu by pressing F2. It will change
  609. all "on" pixels to "off" pixels, and vice versa. It operates on the character
  610. presently displayed, including any editing changes already made up to that
  611. point.
  612.  
  613.  
  614.  
  615. 5.2.1.1.2.  Hollow.
  616.  
  617. This is chosen from the Image Transforms menu by pressing F3. It will hollow
  618. out a character, leaving behind a skeleton about one pixel wide. The hollow
  619. function is performed by deleting all pixels which are completely enclosed by
  620. its 8 neighbors.
  621.  
  622.  
  623.  
  624. 5.2.1.1.3.  Thinner.
  625.  
  626. This is chosen from the Image Transforms menu by pressing F4. It will delete
  627. a layer of pixels one pixel deep from the surface of the character. The
  628. surface it deletes from can be any combination of the top, bottom, left, or
  629. right surfaces, as controlled by the user. The surface(s) are controlled by
  630. the Bold/Thin Option, Ctrl-F4. The default value for the bold/thin option
  631. will cause a layer of pixels to be deleted from all four surfaces.
  632.  
  633. This function can be invoked repeatedly to make the character even thinner.
  634. However, the thinning algorithm is smart enough not to thin it beyond the
  635. point at which the character's basic shape changes. That is, you can thin
  636. acharacter to a 1-pixel wide skeletonal stick figure, but it will still be
  637. recognizable as that character.
  638.  
  639.  
  640.  
  641. 5.2.1.1.4.  Mirror Image.
  642.  
  643. This is chosen from the Image Transforms menu by pressing F5. It will flip
  644. the character around the vertical axis, as if you were looking at it in a
  645. mirror.
  646.  
  647.  
  648.  
  649. 5.2.1.1.5.  Upside-Down
  650.  
  651. This is chosen from the Image Transforms menu by pressing F6. It will turn
  652. the character upside-down, flipping it  around the horizontal axis.
  653.  
  654.  
  655.  
  656.  
  657.           FONTEDIT, (C) by Alexander Walter                      Page 13
  658.  
  659.  
  660.  
  661. 5.2.1.1.6.  Slant.
  662.  
  663. This is chosen from the Image Transforms menu by pressing F7. It will slant
  664. the top of the character left or right. Upon choosing this option, you will
  665. see a blinking parallelogram which indicates the amount of slant the new
  666. character will have. If this option is chosen without a mouse present, the
  667. height of the parallelogram can be disregarded. This option can be chosen
  668. only if not in zoom mode.
  669.  
  670. Slant and tilt are especially useful for straightening out an imported
  671. scanned image which may be slightly crooked, or for creating pseudo-italic
  672. characters, etc.
  673.  
  674.  
  675.  
  676. 5.2.1.1.7.  Tilt.
  677.  
  678. This is chosen from the Image Transforms menu by pressing F8. It will tilt
  679. the right side of the character up or down. Upon choosing this option, you
  680. will see a blinking parallelogram which indicates the amount of tilt the new
  681. character will have. If this option is chosen without a mouse present, the
  682. width of the parallelogram can be disregarded. This option can be chosen only
  683. if not in zoom mode.
  684.  
  685.  
  686.  
  687. 5.2.1.1.8.  Drop Shadow.
  688.  
  689. This is chosen from the Image Transforms menu by pressing F9. It will hollow
  690. out the character and place a shadow of the original character underneath it.
  691. This can be used to simulate a 3-dimensional character. Upon choosing this
  692. option you will see a blinking character box, which represents the placement
  693. of the shadowed image of the character. When the placement is OK, click the
  694. mouse (or press F10 if no mouse). This option can be chosen only if not in
  695. zoom mode.
  696.  
  697.  
  698.  
  699. 5.2.1.1.9.  Resize.
  700.  
  701. This is chosen from the Image Transforms menu by pressing Shift-F2. It will
  702. allow the character to be stretched or compressed both horizontally and
  703. vertically independently. The resized character will be smoothed to eliminate
  704. "jaggies". This option can be chosen only if not in zoom mode.
  705.  
  706. When this option is chosen, the character box will blink. You can use the
  707. mouse or arrow keys to change the size of the character box, and it will
  708. "rubber-band" while you do so. The upper left corner remains fixed, and only
  709. the lower right corner moves. F5 can be used to refresh the display. When the
  710. size is OK, click the mouse or press F10 to accept the new size. The
  711. character will be scaled to the new size.
  712.  
  713.           FONTEDIT, (C) by Alexander Walter                      Page 14
  714.  
  715.  
  716.  
  717.  
  718. If you cannot make the character big enough by moving only the lower right
  719. corner, cancel the resizing and move the entire character with Ctrl-Up or
  720. Ctrl-Left, and then resize again.
  721.  
  722. After the character is resized, you may want ensure that the left offset, top
  723. offset, and kerning (if the font is proportional) are acceptable.
  724.  
  725.  
  726.  
  727. 5.2.1.1.10.  Counterclockwise.
  728.  
  729. This is chosen from the Image Transforms menu by pressing Shift-F3. It will
  730. turn the character 90 degrees counterclockwise. It can be repeatedly pressed,
  731. and pressing it 3 times is equivalent to turning the character 90 degrees
  732. clockwise. Using this option, you can simulate the ability to print both
  733. portrait and landscape on the same page at the same time on the LaserJet II.
  734. This option can be chosen only if not in zoom mode.
  735.  
  736.  
  737.  
  738. 5.2.1.1.11.  Bolder.
  739.  
  740. This is chosen from the Image Transforms menu by pressing Shift-F4. It will
  741. add a layer of pixels one pixel deep to the surface of the character. The
  742. surface it adds to can be any combination of the top, bottom, left, or right
  743. surfaces, as controlled by the user. The surface(s) are controlled by the
  744. Bold/Thin Option, Ctrl-F4. The default value for the bold/thin option will
  745. cause a layer of pixels to be added to all four surfaces.
  746.  
  747. The bolding transformation will not change the number of rows and columns in
  748. the character box. You may find the look of the resulting bolded character
  749. more pleasing if you do the bolding in 3 steps: first, Expand the character
  750. to add blank rows around the sides (F2 from the Row/Col Ins/Del Menu);
  751. second, perform the Bolding,; third, then Trim the character (F3 from the
  752. Row/Col Ins/Del Menu) to delete the blank rows and columns around the sides.
  753.  
  754. This function can be invoked repeatedly, but it is smart enough to keep from
  755. completely filling up interior areas like the middle of the letter "O".
  756.  
  757.  
  758.  
  759. 5.2.1.1.12.  Bold/Thin Option
  760.  
  761. This is chosen from the Image Transforms menu by pressing Ctrl-F4. This
  762. controls a weight factor that is  used by the bolding and thinning algorithms
  763. to control which of the four directions are emboldened or thinned. Once the
  764. weight factor is changed, it stays at that value for other characters until
  765. changed again. The weights  and directions are shown below:
  766.  
  767.       Weight                 Bold                         Thin
  768.  
  769.           FONTEDIT, (C) by Alexander Walter                      Page 15
  770.  
  771.  
  772.  
  773.       ------                 ----                         ----
  774.         1                    Right                        Left
  775.         2                    Left                         Right
  776.         4                    Down                         Up
  777.         8                    Up                           Down
  778.  
  779. The weights can be combined. For instance, to embolden up and right, select a
  780. weight of 9. The default weight value is 15.
  781.  
  782.  
  783.  
  784. 5.2.1.2.  Area Operators
  785.  
  786. Area Operators is a choice from the Pixel Edit menu. It allows you to fill
  787. (turn "on") or clear (turn "off") a large group of pixels at once. Several
  788. types of shapes are available. Upon entering the edit mode, the status
  789. message at the top of the screen says:
  790.  
  791.               "Area fill & Clear.    Choose a shape with F keys."
  792.  
  793. The following menu choices are displayed:
  794.  
  795.   F3 = Polygon
  796.   F4 = Rectangle
  797.   F5 = Ellipse & Wedge
  798.   F6 = Parallelogram
  799.   ESC= Pixel Edit
  800.  
  801. At this point you can either choose one of the shapes shown, or escape back
  802. to pixel editing. Any area operations you have completed but now wish to undo
  803. must be undone by escaping to Pixel Editing, and then escaping from Pixel
  804. Editing back to the Main Menu. Caution - this will also undo any other
  805. unrelated editing changes for that character.
  806.  
  807. All area operations act on a character using the aspect ratios presently in
  808. use. For instance, if you choose a circular fill area operation (a special
  809. case of the ellipse fill), but the character is displayed such that it is
  810. wide and flat, the filled area will appear circular on screen. However, once
  811. is is printed, the filled area would appear more like a tall, upright ellipse
  812. rather than a circle. The default aspect ratio has been chosen to eliminate
  813. this potential problem.
  814.  
  815.  
  816.  
  817. 5.2.1.2.1.  Polygon Fill & Clear
  818.  
  819. Polygon fill and clear allows filling and clearing of areas of arbitrary,
  820. closed shape. The shape should be a polygon that does not loop onto itself
  821. such as a figure eight. For such a polygon, only one of the interior loops
  822. would be filled or cleared.
  823.  
  824.  
  825.           FONTEDIT, (C) by Alexander Walter                      Page 16
  826.  
  827.  
  828.  
  829. Upon entering Polygon Fill & Clear, the status message at the top of the
  830. screen says either:
  831.  
  832.    Polygon fill.   Left Button: Mark vertex    Right Button: Close Polygon"
  833.  
  834. if a mouse is installed, or simply:
  835.  
  836.                                 "Polygon fill."
  837.  
  838. if no mouse is installed. The menu keys display the choices:
  839.  
  840.   F10= Close Polygon(1)
  841.   RET= Mark vertex(1)
  842.   ESC= Cancel
  843.  
  844. notes:
  845.  
  846.   1. This menu choice shown only if no mouse is installed.
  847.  
  848.  
  849. To begin marking the polygon to fill or clear, go to a vertex of it and
  850. either press the left mouse button (if using a mouse), or press RETURN (if
  851. not using a mouse). Then go to each succeeding vertex in order and either
  852. press the left mouse button or press RETURN. As you select where to place the
  853. vertex, the line segment will blink to show you how it would look if the
  854. vertex were placed there. After you place the vertex, the line segment will
  855. become solid and a partially drawn polygon will be superimposed on the
  856. character displayed. At any time you can cancel the polygon fill & clear
  857. operation by pressing ESC.
  858.  
  859.  
  860. After the first vertex is marked, the menu choice "F2 = Bezier Curve" will
  861. appear. This choice allows a Bezier curve segment to be defined. This choice
  862. is described more fully below.
  863.  
  864. After you have marked each vertex, it is not necessary to go back to the
  865. first vertex; simply press the right mouse button (if using a mouse), or
  866. press F10 (if not using a mouse). The polygon will automatically be completed
  867. between the last vertex marked and the first vertex.
  868.  
  869. At this point, the character is temporarily suppressed, leaving displayed the
  870. outline of the character box and the polygon just marked. You now have the
  871. option of:
  872.  
  873.  
  874.   ---------------                     -----------------
  875.   Filling, or    \                   / polygon interior
  876.   Clearing, or    >--- either the --<        or        
  877.   XOR'ing        /                   \ polygon exterior
  878.   ---------------                     -----------------
  879.  
  880.  
  881.           FONTEDIT, (C) by Alexander Walter                      Page 17
  882.  
  883.  
  884.  
  885. If a mouse is installed, the status line will read:
  886.  
  887.           "Left Button: Fill      Right Button: Clear     Both: XOR"
  888.  
  889. The menu choices will show:
  890.  
  891.   F3 = Fill(1)
  892.   F4 = Clear(1)
  893.   F5 = XOR(1)
  894.   F6 = Tiling(2)
  895.   ESC= Cancel
  896.  
  897. notes:
  898.  
  899.   1. This menu choice shown only if no mouse is installed.
  900.   2.  his menu choice shown only for very large fonts on a VGA, AT&T, or CGA
  901.       display.
  902.  
  903.  
  904. Move the mouse or crosshairs to either the interior or exterior of the
  905. polygon, and either click the mouse or press the function keys F3, F4, or F5.
  906. After a few seconds, the character will be redrawn with the affected pixels
  907. either filled, cleared, or exclusive-ORed (XOR'ed). You will be returned back
  908. to the Area Operations menu.
  909.  
  910.  
  911.  
  912. 5.2.1.2.1.1.  Bezier Curve
  913.  
  914. This choice is enabled during Polygon Area Operations after the first point
  915. of a polygon has been chosen. Upon choosing the Bezier Curve option, you will
  916. be given the choices:
  917.  
  918.   F2 = Set Endpoint
  919.   F3 = Set C1
  920.   F4 = Set C2
  921.   F10= Curve OK
  922.   ESC= Cancel
  923.  
  924. A Bezier curve is defined by four points: the start, the end, and two control
  925. points (C1 & C2). When the  Bezier Curve option is chosen, the most recently
  926. defined polygon vertex is taken as the starting point. The other three points
  927. are chosen using the F2, F3, and F4 keys. As each point is chosen, the menu
  928. will change to read "Modify ...". For instance, after the endpoint is chosen,
  929. the menu will show "F2 = Modify Endpoint".
  930.  
  931. Once the three points are chosen, a Bezier curve will be drawn. The location
  932. of any of the three points can then be modified. While a point is being
  933. modified, the Bezier curve will "rubber-band" to show the effect of moving
  934. that point. The old location of the point will blink as a reminder of its
  935. location.
  936.  
  937.           FONTEDIT, (C) by Alexander Walter                      Page 18
  938.  
  939.  
  940.  
  941.  
  942. Once the three points have been satisfactorily set, press F10 to accept the
  943. Bezier curve. Polygon definition will continue from the ending of the Bezier
  944. curve.
  945.  
  946.  
  947.  
  948. 5.2.1.2.2.  Rectangle Fill & Clear
  949.  
  950. Rectangle fill & clear allows filling of rectangular (including square)
  951. regions, and operates in a similar  manner as polygon fill & clear, except
  952. that only the two diagonally opposite corners of the rectangle need to be
  953. marked. They can be either upper left - lower right, or lower left - upper
  954. right.
  955.  
  956. Upon entering Rectangle Fill & Clear, the status message at the top of the
  957. screen says either:
  958.  
  959.   Rectangle fill.   Left Button: 1st corner   Right Button: Opposite Corner"
  960.  
  961. if a mouse is installed, or simply:
  962.  
  963.                                "Rectangle fill."
  964.  
  965. if no mouse is installed. The menu keys display the choices:
  966.  
  967.   RET= Mark Corner(1)
  968.   ESC= Cancel
  969.  
  970. notes:
  971.  
  972.   1. This menu choice shown only if no mouse is installed.
  973.  
  974.  
  975. To begin marking the rectangle to fill or clear, go to a corner of it and
  976. either press the left mouse button (if using a mouse), or press RETURN (if
  977. not using a mouse). The first corner will blink as a marker to you. Then go
  978. to the diagonally opposite corner and either press the right mouse button or
  979. press RETURN. At any time you can cancel the rectangle fill & clear operation
  980. by pressing ESC.
  981.  
  982. At this point, the character is temporarily suppressed, leaving displayed the
  983. outline of the character box and the rectangle just marked. You now have the
  984. option of:
  985.  
  986.   ---------------                     -----------------
  987.   Filling, or    \                   / rectangle interior
  988.   Clearing, or    >--- either the --<        or        
  989.   XOR'ing        /                   \ rectangle exterior
  990.   ---------------                     -----------------
  991.  
  992.  
  993.           FONTEDIT, (C) by Alexander Walter                      Page 19
  994.  
  995.  
  996.  
  997. If a mouse is installed, the status line will read:
  998.  
  999.           "Left Button: Fill      Right Button: Clear     Both: XOR"
  1000.  
  1001. The menu choices will show:
  1002.  
  1003.   F3 = Fill(1)
  1004.   F4 = Clear(1)
  1005.   F5 = XOR(1)
  1006.   ESC= Cancel
  1007.  
  1008. notes:
  1009.  
  1010.   1. This menu choice shown only if no mouse is installed.
  1011.  
  1012.  
  1013. Move the mouse or crosshairs to either the interior or exterior of the
  1014. rectangle, and either click the mouse or press the function keys F3, F4, or
  1015. F5. After a few seconds, the character will be redrawn with the affected
  1016. pixels either filled, cleared, or exclusive-ORed (XOR'ed). You will be
  1017. returned back to the Area Operations menu.
  1018.  
  1019.  
  1020.  
  1021. 5.2.1.2.3.  Ellipse & Wedge Fill / Clear
  1022.  
  1023. Ellipse fill & clear allows filling of elliptical (including circular)
  1024. regions, and operates in a similar manner as rectangle fill & clear, except
  1025. that only the center of the ellipse and a point on it need to be marked.
  1026.  
  1027.  
  1028. Upon entering Ellipse Fill & Clear, the status message at the top of the
  1029. screen says either:
  1030.  
  1031.               Ellipse fill.       Left Button: Center of ellipse"
  1032.  
  1033. if a mouse is installed, or:
  1034.  
  1035.             "Ellipse fill.     Go to center of Ellipse & mark it."
  1036.  
  1037. if no mouse is installed. The menu keys display the choices:
  1038.  
  1039.   F3 = Wider, Flatter
  1040.   F4 = Taller, Thinner
  1041.   F5 = Refresh Charac.
  1042.   F6 = Bigger Wedge
  1043.   F7 = Smaller Wedge
  1044.   F8 = Move Clockwise
  1045.   F9 = Move Counterclk
  1046.   F10= Ellipse OK(1)
  1047.   RET= Mark Corner(1)
  1048.  
  1049.           FONTEDIT, (C) by Alexander Walter                      Page 20
  1050.  
  1051.  
  1052.  
  1053.   ESC= Cancel
  1054.  
  1055. notes:
  1056.  
  1057.   1. This menu choice shown only if no mouse is installed.
  1058.  
  1059.  
  1060. After you mark the center of the ellipse it will blink as a marker to you.
  1061. The status line will change to read:
  1062.  
  1063.                 "Ellipse fill.       Right Button: Ellipse OK"
  1064.  
  1065. if you are using a mouse, or:
  1066.  
  1067.             "Arrow keys: Define size     F keys: Shape of Ellipse"
  1068.  
  1069. if no mouse is installed. Move the mouse cursor or crosshairs to define the
  1070. size of the ellipse; as you move, the ellipse is continually redrawn to show
  1071. you where it will go. The default shape is circular, but you can change the
  1072. shape by repeatedly pressing the F3 and/or F4 keys.
  1073.  
  1074. The F6, F7, F8, and F9 keys allow you do define a wedge instead of a full
  1075. ellipse.
  1076.  
  1077. At times, the redrawing process of ellipse may make it hard to make out the
  1078. character underneath. If this becomes the case, press F5 to refresh the
  1079. character display.
  1080.  
  1081. When you have made the ellipse the right size and shape, press the right
  1082. mouse button (if using a mouse), or the F10 key (if not using a mouse). At
  1083. this point, the character is temporarily suppressed, leaving displayed the
  1084. outline of the character box and the ellipse just marked. You now have the
  1085. option of:
  1086.  
  1087.   ---------------                     -----------------
  1088.   Filling, or    \                   / ellipse interior
  1089.   Clearing, or    >--- either the --<        or        
  1090.   XOR'ing        /                   \ ellipse exterior
  1091.   ---------------                     -----------------
  1092.  
  1093. If a mouse is installed, the status line will read:
  1094.  
  1095.           "Left Button: Fill      Right Button: Clear     Both: XOR"
  1096.  
  1097. The menu choices will show:
  1098.  
  1099.   F3 = Fill(1)
  1100.   F4 = Clear(1)
  1101.   F5 = XOR(1)
  1102.   ESC= Cancel
  1103.  
  1104.  
  1105.           FONTEDIT, (C) by Alexander Walter                      Page 21
  1106.  
  1107.  
  1108.  
  1109. notes:
  1110.  
  1111.   1. This menu choice shown only if no mouse is installed.
  1112.  
  1113.  
  1114.  
  1115. Move the mouse or crosshairs to either the interior or exterior of the
  1116. ellipse, and either click the mouse or press the function keys F3, F4, or F5.
  1117. After a few seconds, the character will be redrawn with the affected pixels
  1118. either filled, cleared, or exclusive-ORed (XOR'ed). You will be returned back
  1119. to the Area perations menu.
  1120.  
  1121.  
  1122.  
  1123. 5.2.1.2.4.  Parallelogram Fill & Clear
  1124.  
  1125. Parallelogram fill & clear allows the filling and clearing of parallelogram
  1126. areas in a manner similar to rectangle fill & clear. Two adjacent corners of
  1127. the parallelogram are first marked, as directed by the instructions on
  1128. screen. After the second corner is marked, move the crosshairs or mouse
  1129. cursor to the third corner. An outline of the parallelogram will be "rubber
  1130. banded" on screen to show the size. Mark the 3rd corner as directed by the
  1131. instructions on screen. Move the mouse or crosshairs to either the interior
  1132. or exterior of the parallelogram, and either click the mouse or press the
  1133. function keys F3, F4, or F5. After a few seconds, the character will be
  1134. redrawn with the affected pixels either filled or cleared. You will be
  1135. returned back to the Area Operations menu.
  1136.  
  1137.  
  1138.  
  1139. 5.2.1.2.5.  Pixel Edit
  1140.  
  1141. This menu choice from the Area Operations menu allows you to return to pixel
  1142. editing. While in pixel editing you can, for instance, do detailed pixel by
  1143. pixel touch-up work of the areas worked on by the area operators. At the
  1144. pixel edit menu, Alt-Z can be used to toggle zoom mode.
  1145.  
  1146.  
  1147.  
  1148. 5.2.1.3.  Clear Character
  1149.  
  1150. This function is chosen from the Pixel Edit menu. It allows you to "clear"
  1151. (turn off) all pixels within the presently displayed character box.
  1152.  
  1153.  
  1154.  
  1155. 5.2.1.4.  Row/Col Ins/Del
  1156.  
  1157. Row/Col Ins/Del allows you to change the size of the character box by
  1158. inserting or deleting rows and columns. Rows and columns are inserted or
  1159. deleted under the current location of the mouse cursor or crosshairs. By
  1160.  
  1161.           FONTEDIT, (C) by Alexander Walter                      Page 22
  1162.  
  1163.  
  1164.  
  1165. moving the mouse or crosshairs you can insert or delete rows and columns
  1166. anywhere in the character box. When individual rows and columns are inserted,
  1167. the new row or column copies the pixels from the row or column immediately
  1168. above or to the left of the cursor. Individual pixels can still be toggled on
  1169. or off while in the Row/Col Insert/Delete mode.
  1170.  
  1171. Row/Column insert/delete acts upon the image of the character as displayed.
  1172. Since landscape fonts are displayed sideways, deleting a row on the screen
  1173. corresponds to deleting a column in the printed version of the character.
  1174.  
  1175. When inserting or deleting rows or columns, the upper left corner of the
  1176. character box is anchored. The character box grows downward and/or to the
  1177. right, and contracts upward and/or to the left. It will not grow beyond the
  1178. limits of the cell box, and you cannot contract it to zero rows or columns.
  1179. You can move the upper left corner of the character box by pressing Ctrl-Up,
  1180. Ctrl-Down, Ctrl-Left, or Ctrl-Right. If your keyboard has two sets of arrow
  1181. keys, the arrow keys on the numeric keypad must be used to move the
  1182. character box.
  1183.  
  1184. When inserting rows or columns, the row or column under the mouse cursor or
  1185. crosshairs will be replicated.
  1186.  
  1187. Upon entering row/column insert/delete, the status message at the top of the
  1188. screen says:
  1189.  
  1190.    Insert & Delete Rows or Columns.    Go to row or column and use F keys."
  1191.  
  1192. The menu choices will show:
  1193.  
  1194.   F2 = Trim
  1195.   F3 = Expand
  1196.   F5 = Insert Row
  1197.   F6 = Delete Row
  1198.   F7 = Insert Column
  1199.   F8 = Delete Column
  1200.   F10= Size OK
  1201.   ESC= Cancel
  1202.  
  1203. Individual rows and columns are inserted and deleted as described above by
  1204. pressing the F5, F6, F7, or F8 keys. When finished, press F10. If you decide
  1205. not to accept the changes you made, press ESC. If you press ESC, the
  1206. character will be restored to the size it had prior to beginning row/column
  1207. insert/delete. Any editing changes made prior to beginning row/column
  1208. insert/delete will also be restored.
  1209.  
  1210.  
  1211.  
  1212. 5.2.1.4.1.  Trim
  1213.  
  1214. The Trim function will trim blank rows and columns from the outside of a
  1215. character. It is selected by pressing F3 from the Row/Col Insert/Delete menu.
  1216.  
  1217.           FONTEDIT, (C) by Alexander Walter                      Page 23
  1218.  
  1219.  
  1220.  
  1221. It will trim all four sides, and from each direction it will stop at the
  1222. first black pixel it finds. Any blank rows or columns in the interior of the
  1223. character will not be affected. Black pixels in the original character will
  1224. still be in their same position relative to the cell box. The kerning is not
  1225. changed. If a character is completely blank, the size of the character will
  1226. not change.
  1227.  
  1228. The Trim function is also available on a font-wide basis by pressing Shift-F6
  1229. from the Font Operations menu.
  1230.  
  1231.  
  1232.  
  1233. 5.2.1.4.2.  Expand
  1234.  
  1235. The Expand function is selected by pressing F2 from the Row/Col Insert/Delete
  1236. menu. The number of rows will be expanded to the limits given by the cell
  1237. height. The rightmost column will be set to the right side of the cell box;
  1238. the leftmost column will be set to the left side of the cell box unless there
  1239. are some characters with negative left offsets. In this case, the leftmost
  1240. column will be set to the same as the leftmost character of the font.
  1241.  
  1242. New rows and columns added with the Expand function will be blank. Any black
  1243. pixels in the original character will still be in their same position
  1244. relative to the cell box. The kerning is not changed.
  1245.  
  1246. The Expand function is also available on a font-wide basis by pressing
  1247. Shift-F7 from the Font Operations menu.
  1248.  
  1249. Together, the Expand and Trim functions can conveniently add extra space to a
  1250. character for editing, and then remove it to minimize the font's size and
  1251. memory requirements in the printer.
  1252.  
  1253.  
  1254.  
  1255. 5.2.1.5.  Cut & Paste
  1256.  
  1257. This function is chosen from the Pixel Edit menu by pressing F6. It allows
  1258. you to copy selected rectangular portions of a character to other parts of
  1259. that same character, or to and from a clipboard. The clipboard allows you to
  1260. transfer portions of a character to other characters. The copy can be made to
  1261. cover-up, logical OR, logical AND, or logical XOR the underlying pixels.
  1262. Optionally, you can delete the original portion of the character being
  1263. copied.
  1264.  
  1265. An example of usage would be to move an accent over a character if you find
  1266. it isn't placed correctly. Or, to make an umlaut (double dots over a
  1267. character), you could copy the first dot, ensuring that both dots will be the
  1268. same size.
  1269.  
  1270. Cutting a portion of a character can be done for any row and column
  1271. magnification values (see section 5.3.12 for an explanation of changing the
  1272.  
  1273.           FONTEDIT, (C) by Alexander Walter                      Page 24
  1274.  
  1275.  
  1276.  
  1277. magnification values). However, when pasting from the clipboard, the
  1278. magnification values must be the same as when the image was pasted into the
  1279. clipboard. For cutting and pasting when NOT in Zoom mode, this will be
  1280. transparent, since the same magnification values are used for each character.
  1281. For Zoom mode, each letter is initially displayed with different
  1282. magnification values based on its size. In this case, care should be takes to
  1283. make sure the magnification values are the same, and if necessary change them
  1284. using Shift-F3 from the Main Menu as described in section 5.3.12.
  1285.  
  1286. When entering Cut & Paste, if you have already placed something into the
  1287. clipboard, and if the contents would fit within the character being edited,
  1288. you will be asked if you want to use the clipboard's contents. The default
  1289. answer is no. If you choose yes, the clipboard contents will be shown
  1290. blinking, and you can continue placing the contents as described below.
  1291.  
  1292. If you answer no, or if the clipboard was empty, you will be asked to mark
  1293. the first corner either by clicking the left mouse button (if using a mouse),
  1294. or by pressing ENTER (if no mouse). This will be one corner of a rectangular
  1295. area to be copied. Then as you move the mouse or crosshairs, a box will
  1296. rubber-band showing the size of the rectangular area to be copied. Mark the
  1297. diagonally opposite corner by pressing the right mouse button (or by pressing
  1298. ENTER if no mouse). It is not necessary to try to click the mouse on the
  1299. corner of a pixel. You can click anywhere in the pixels which are to be the
  1300. corners. FONTEDIT will include that entire pixel.
  1301.  
  1302. Upon marking both corners, the status message at the top of the screen says
  1303. either:
  1304.  
  1305.    "Left Button: OR Copy     Right Button: Cover-Up Copy     Both: XOR Copy"
  1306.  
  1307. if a mouse is installed, or:
  1308.  
  1309.                   "Press F4, F5, or F6 when placement is OK."
  1310.  
  1311. if no mouse is installed. The menu keys display the choices:
  1312.  
  1313.   F2 = Cut / Uncut
  1314.   F4 = OR Copy(1)
  1315.   F5 = Cover-Up Copy(1)
  1316.   F6 = XOR Copy(1)
  1317.   F7 = AND Copy(1)
  1318.   F8 = To Clipboard
  1319.   F9 = From Clipboard(2)
  1320.   ESC= Cancel
  1321.  
  1322. notes:
  1323.  
  1324.   1.  This menu choice shown only if no mouse is installed.
  1325.   2.  This menu choice shown only if something has already been copied to the
  1326.       clipboard.
  1327.  
  1328.  
  1329.           FONTEDIT, (C) by Alexander Walter                      Page 25
  1330.  
  1331.  
  1332.  
  1333.  
  1334. The image being copied will blink. Use the mouse, or arrow keys and PgUp,
  1335. PgDn, Tab, and Shift-Tab keys to position the copy. Pressing F2 toggles
  1336. whether the original image is erased or kept. When the position is OK, choose
  1337. the OR, Cover-Up, or XOR copy.
  1338.  
  1339. The OR copy copies the rectangular image such that the pixels underneath are
  1340. turned "on" if they were "on" originally, or if the image being copied has
  1341. that pixel turned "on".
  1342.  
  1343. The Cover-Up copy copies the rectangular image such that the pixels
  1344. underneath become an exact replica of the rectangular image. Any pixels in
  1345. the rectangular image which were "off" will stay "off" with the Cover-Up
  1346. copy, regardless of whether the pixels underneath were "on" or "off".
  1347.  
  1348. The XOR copy copies the rectangular image such that the pixels underneath are
  1349. eXclusive-ORed with the pixels in the image being copied. Any "on" pixels in
  1350. the copy will reverse the on/off state of the pixel originally underneath.
  1351. Any "off" pixels in the copy will not affect the pixel originally underneath.
  1352.  
  1353. The AND copy copies the rectangular image such that the pixels underneath are
  1354. "on" only if both they  originally were "on" and if the image from the
  1355. clipboard has an "on" pixel in that location.
  1356.  
  1357. You can copy the image to the clipboard in case you want to paste it to
  1358. another character. Or, if an image has previously been copied to the
  1359. clipboard, you can substitute it for the image now blinking.
  1360.  
  1361.  
  1362.  
  1363. 5.2.1.6.  Adjust Kerning
  1364.  
  1365. This function is chosen from the Pixel Edit menu. It allows you to adjust the
  1366. character spacing for proportional fonts. This function will not be displayed
  1367. or activated if the font is a fixed-width font, or if zoom mode is active.
  1368.  
  1369. When activated, a blinking line indicates the start of the next character
  1370. when the displayed character is printed. Use either the mouse (if installed)
  1371. or the arrow keys to move the line. The arrow keys will change the kerning
  1372. value in increments of 4. Since the units of kerning is in terms of a
  1373. quarter-pixel, each press of an arrow key is equivalent to one pixel. Since
  1374. the LaserJet Series II printer rounds the kerning value to the nearest whole
  1375. pixel anyways, a finer resolution on the arrow keys would be ineffective.
  1376.  
  1377. F10 or clicking the mouse accepts the new kerning value; ESC cancels the
  1378. function.
  1379.  
  1380.  
  1381.  
  1382. 5.2.1.7.  Quit & Save
  1383.  
  1384.  
  1385.           FONTEDIT, (C) by Alexander Walter                      Page 26
  1386.  
  1387.  
  1388.  
  1389. This function saves your editing changes to this character, terminates Pixel
  1390. Editing, and returns you to the main menu.
  1391.  
  1392.  
  1393.  
  1394. 5.2.1.8.  Toggle Pixel
  1395.  
  1396. This function can be chosen only if using FONTEDIT without a mouse. It allows
  1397. you to toggle the pixel underneath the crosshairs either on or off.
  1398.  
  1399.  
  1400.  
  1401. 5.2.1.9.  Quit, no Save
  1402.  
  1403. This function terminates Pixel Editing and returns you to the main menu
  1404. without saving any of your changes to the character displayed.
  1405.  
  1406.  
  1407.  
  1408. 5.2.2.  Zoom / Unzoom
  1409.  
  1410. The zoom function enlarges the displayed character by suppressing the display
  1411. of the cell box, and expanding the character box to as large a size as
  1412. possible without regard to maintaining any particular ratio of width to
  1413. height. While in zoom mode, the character box cannot be moved within the cell
  1414. box, kerning cannot be adjusted, and several of the image transformations
  1415. listed earlier in the paragraph describing the "Image Transformations" menu
  1416. cannot be used. All other editing functions can be used in zoom mode. Zoom
  1417. mode can also be toggled by pressing ALT-Z.
  1418.  
  1419. If already in zoom mode, the menu will instead say "Unzoom". Unzooming
  1420. restores the display of the cell box and re-enables editing functions
  1421. disabled during zoom mode.
  1422.  
  1423.  
  1424.  
  1425. 5.2.3.  Font Operators
  1426.  
  1427. This selection allows changing parameters of the entire font. The
  1428. transformations selected using the CTRL  and Shift keys work very similarly
  1429. to the same choices under the Pixel Edit - Image Transformation menu, except
  1430. that the transformation will now be done for each character in the font. For
  1431. instance, CTRL-F5 will make a mirror image of each character. Once these
  1432. transformations have begun, they can be stopped midway by pressing Escape,
  1433. but characters which have already been transformed will remain transformed.
  1434. If you do stop in the middle, you can control what ASCII value to restart
  1435. from by using the "start ASCII" parameter described below.
  1436.  
  1437. Global transformations can be sped up by selecting a smaller size for the row
  1438. & column expansion values. They are changed by pressing Shift-F3 from the
  1439. Main Menu, and will make the displayed character smaller on the screen. It
  1440.  
  1441.           FONTEDIT, (C) by Alexander Walter                      Page 27
  1442.  
  1443.  
  1444.  
  1445. does not change the size of the font when printed on paper. By making the
  1446. character smaller on the screen, there are fewer bytes that need to be
  1447. shuffled around the VGA memory, and the graphic algorithms that perform the
  1448. image transformations will run faster.
  1449.  
  1450. Upon selection of Font Operators, the following menu choices will be
  1451. available:
  1452.  
  1453. NO SHIFT or CTRL             SHIFT only                CTRL only
  1454. -------------------------    ----------------------    ---------------------
  1455.   F1 =                       F1 =                      F1 = Counterclockwise
  1456.   F2 = New Cell Width        F2 = New Symbol Set       F2 = Invert
  1457.   F3 = New Cell Height       F3 = New Typeface         F3 = Hollow
  1458.   F4 = Create New Font       F4 = New Font Comment     F4 = Thinner
  1459.   F5 = Make Landscape(1)     F5 = Bold/Thin Option     F5 = Mirror Image
  1460.   F6 = Make Fixed Width(2)   F6 = Trim All             F6 = Upside-Down
  1461.   F7 = New Pitch (HMI)       F7 = Expand All           F7 = Slant
  1462.   F8 = New VMI               F8 = Resize All           F8 = Tilt
  1463.   F9 = New Point Size        F9 =                      F9 = Drop Shadow
  1464.   F10= Move Baseline         F10=                      F10= Bolder
  1465.   RET= Move Underline        RET=                      RET= Start ASCII
  1466.   ESC= Main Menu             ESC= Main Menu            ESC= Main Menu
  1467.  
  1468. notes:
  1469.  
  1470.   1. If the font is already landscape, this will say "Make Portrait".
  1471.   2. If font is already fixed width, this will say "Make Propor."
  1472.  
  1473.  
  1474.  
  1475. 5.2.3.1.  New Cell Width
  1476.  
  1477. This function is chosen by pressing F2 from the Font Operations Menu. This
  1478. changes the cell width, which is the maximum width a character in the font
  1479. can have. The allowable values for the new cell width are presented as a
  1480. range; the lower bound is determined by the maximum character width and
  1481. offset for all of the defined ASCII values in the font. The maximum depends
  1482. on screen resolution. Note that if the new cell width is chosen very wide for
  1483. a portrait font (>187 for CGA, >331 for EGA, >459 for VGA), you won't be able
  1484. to convert the font to landscape using FONTEDIT.
  1485.  
  1486.  
  1487.  
  1488. 5.2.3.2.  New Cell Height
  1489.  
  1490. This function is chosen by pressing F3 from the Font Operations Menu. This
  1491. changes the cell height, which is the maximum height a character in the font
  1492. can have. The allowable values for the new cell height are presented as a
  1493. range; the lower bound is determined by the maximum character height and
  1494. offset for all of the defined ASCII values in the font. The maximum is a
  1495. function of screen resolution. Note that if the new cell height is chosen
  1496.  
  1497.           FONTEDIT, (C) by Alexander Walter                      Page 28
  1498.  
  1499.  
  1500.  
  1501. very tall for a landscape font (>187 for CGA, >331 for EGA, >459 for VGA),
  1502. you won't be able to convert the font to portrait using FONTEDIT. Similarly,
  1503. if the cell height of a portrait font is made >467, you won't be able to
  1504. convert the font to landscape.
  1505.  
  1506.  
  1507.  
  1508. 5.2.3.3.  Create New Font
  1509.  
  1510. This function is chosen by pressing F4 from the Font Operations Menu. This
  1511. creates a new font from scratch. You will be led through a series of
  1512. questions to establish the following font parameters:
  1513.  
  1514.   -   Cell Width
  1515.   -   Cell Height
  1516.   -   Baseline
  1517.   -   Orientation (portrait/landscape)
  1518.   -   Spacing (fixed/proportional)
  1519.   -   Default Horizontal Motion Index, HMI
  1520.   -   Point Size
  1521.   -   Underline Distance
  1522.  
  1523.  
  1524.  
  1525. 5.2.3.4.  Make Landscape / Make Portrait
  1526.  
  1527. This function is chosen by pressing F5 from the Font Operations Menu. This
  1528. option from the Main menu will convert the entire font to landscape (if
  1529. presently portrait) or to portrait if presently landscape. The entire process
  1530. can take several minutes. Once begun, this process cannot be halted. A status
  1531. of the percentage completed is displayed at the top.
  1532.  
  1533.  
  1534.  
  1535. 5.2.3.5.  Make Fixed Width / Make Propor.
  1536.  
  1537. This function is chosen by pressing F6 from the Font Operations Menu. This
  1538. converts a font between fixed width and proportional. If it is being made
  1539. proportional, the kerning for each character is automatically set to two
  1540. pixels beyond the right of each character.
  1541.  
  1542.  
  1543.  
  1544. 5.2.3.6.  New Pitch (HMI)
  1545.  
  1546. This function is chosen by pressing F7 from the Font Operations Menu. This
  1547. changes the default HMI, which is the horizontal motion (pitch) the printer
  1548. makes when it tries to print a character not defined in the font. For
  1549. instance, ASCII 32 (the space character) is usually not defined in a font.
  1550. The pitch is defined in units of a quarter-pixel, 1200 per inch.
  1551.  
  1552.  
  1553.           FONTEDIT, (C) by Alexander Walter                      Page 29
  1554.  
  1555.  
  1556.  
  1557.  
  1558.  
  1559. 5.2.3.7.  New VMI
  1560.  
  1561. This function is chosen by pressing F8 from the Font Operations Menu. This
  1562. changes the default VMI field in the font header, which may be used by some
  1563. programs supporting soft fonts to set the vertical motion the printer makes
  1564. when it goes to a new line. The VMI is defined in units of a quarter-pixel,
  1565. 1200 per inch. When converted to points (1/72nd of an inch), this is a common
  1566. measure of the size of a font. The printer's line spacing can be set to
  1567. different values than what is specified in the VMI field.
  1568.  
  1569. When FONTEDIT downloads a font to the printer, it instead uses the cell
  1570. height to set the line spacing. Changing the VMI will not change the line
  1571. spacing when FONTEDIT downloads it.
  1572.  
  1573. Choosing this option will not automatically scale the existing characters in
  1574. the font. That is done using the "New Point Size" option described below.
  1575.  
  1576.  
  1577.  
  1578. 5.2.3.8.  New Point Size
  1579.  
  1580. This function is chosen by pressing F9 from the Font Operations Menu. New
  1581. Point Size is a choice from the Main Menu. It allows you to change the point
  1582. size of the entire font, either bigger or smaller. An attempt is made to
  1583. smooth the characters and reduce the "jaggies" that would otherwise result.
  1584. Each new character is displayed on the screen as it is processed.
  1585.  
  1586. The larger the point size, the longer the process takes. Once begun, the
  1587. process cannot be halted. However, when you are initially asked to supply a
  1588. new point size, you can cancel this function by pressing ESC or by inputting
  1589. the present font size as displayed in the Font Information area at the middle
  1590. right of the screen.
  1591.  
  1592.  
  1593.  
  1594. 5.2.3.9.  Move Baseline
  1595.  
  1596. This function is chosen by pressing F10 from the Font Operations Menu. This
  1597. option moves the baseline. The allowable values for the new baseline are
  1598. presented as a range; the bounds are determined by a combination of character
  1599. height, width, left offset, and top offset for all of the defined ASCII
  1600. values in the font. If some characters in the font such as an underscore
  1601. (ASCII 95) occupy the last row of the cell box, and other characters such as
  1602. "|" occupy the top row of the character box, the baseline cannot be moved
  1603. without first changing the offsets for those characters or resizing the cell
  1604. box.
  1605.  
  1606.  
  1607.  
  1608.  
  1609.           FONTEDIT, (C) by Alexander Walter                      Page 30
  1610.  
  1611.  
  1612.  
  1613. 5.2.3.10.  Move Underline
  1614.  
  1615. This function is chosen by pressing RETURN from the Font Operations Menu. It
  1616. will move the position of the underlining. It is not related to the
  1617. underscore character, ASCII 95, so if a program using the font implements
  1618. underlining by using underscores, this function will not change that
  1619. underline.
  1620.  
  1621.  
  1622.  
  1623. 5.2.3.11.  Main Menu
  1624.  
  1625. This returns you to the Main Menu.
  1626.  
  1627.  
  1628.  
  1629. 5.2.3.12.  New Symbol Set
  1630.  
  1631. This function is chosen by pressing Shift-F2 from the Font Operations Menu.
  1632. This only changes the symbol set defined in the font header. It does not
  1633. actually change any of the bitmaps for the characters in the font. Since the
  1634. LaserJet uses the symbol set for its highest priority match when selecting
  1635. which downloaded font to use when printing, changing the symbol set will
  1636. require your application software (i.e., word processors, etc.) to use the
  1637. correct symbol set when selecting this font.
  1638.  
  1639. The new symbol set is chosen numerically, but the prompt will show the
  1640. fragment of the PCL sequence corresponding to this numeric value.
  1641.  
  1642.  
  1643.  
  1644. 5.2.3.13.  New Typeface
  1645.  
  1646. This function is chosen by pressing Shift-F3 from the Font Operations Menu.
  1647. This only changes the typeface defined in the font header. It does not
  1648. actually change any of the bitmaps for the characters in the font. Changing
  1649. the typeface may require your application software (i.e., word processors,
  1650. etc.) to be aware of the new typeface value when selecting this font. When
  1651. the LaserJet selects a font to use, the typeface value is given a lower
  1652. priority than the symbol set.
  1653.  
  1654. When installing a bitmapped font with Windows 3.1 (see section 6.3), the name
  1655. for the font that Windows uses is derived from this typeface field.
  1656.  
  1657. The mapping of typeface number to typeface name (i.e., 4=Helvetica, 5=Times
  1658. Roman, 7=Script, etc.) is given in Table B-3 of the PCL 5 Comparison Guide,
  1659. available from Hewlett-Packard. There are at least 463 typefaces assigned.
  1660. This list is also available by me, Alexander Walter, upon special request to
  1661. registered users of the enhanced version of FONTEDIT.
  1662.  
  1663.  
  1664.  
  1665.           FONTEDIT, (C) by Alexander Walter                      Page 31
  1666.  
  1667.  
  1668.  
  1669.  
  1670. 5.2.3.14.  New Font Comment
  1671.  
  1672. This function is chosen by pressing Shift-F4 from the Font Operations Menu.
  1673. This allows you to change up to 40 characters of the font comment embedded in
  1674. the font header.
  1675.  
  1676.  
  1677.  
  1678. 5.2.3.15.  Bold/Thin Option
  1679.  
  1680. This function is chosen by pressing Shift-F5 from the Font Operations Menu.
  1681. It selects the direction(s) that the bolding and thinning algorithms will do
  1682. their job, and it works exactly as described under the Image Transformations
  1683. Menu.
  1684.  
  1685.  
  1686.  
  1687. 5.2.3.16.  Trim All
  1688.  
  1689. This function is chosen by pressing Shift-F6 from the Font Operations Menu.
  1690. It applies on a font-wide basis the Trim function described under the Row/Col
  1691. Ins/Del paragraph.
  1692.  
  1693.  
  1694.  
  1695. 5.2.3.17.  Expand All
  1696.  
  1697. This function is chosen by pressing Shift-F7 from the Font Operations Menu.
  1698. It applies on a font-wide basis the Expand function described under the
  1699. Row/Col Ins/Del paragraph.
  1700.  
  1701.  
  1702.  
  1703. 5.2.3.18.  Resize All
  1704.  
  1705. This function is chosen by pressing Shift-F8 from the Font Operations Menu.
  1706. This changes the size of all characters by a fixed number of pixels
  1707. horizontally and/or vertically. The amount of change in the two directions is
  1708. controlled independently. The font can be globally resized by up to +/- 20
  1709. pixels at a time for each character.  A positive change is down or right; a
  1710. negative change is up or left. 
  1711.  
  1712. Characters cannot be globally resized to fewer than 5 rows or columns. If
  1713. resizing an individual character, the Tab, Shift-Tab, PgUp, PgDn keys, or the
  1714. mouse, can be used to resize to fewer than 5 rows or columns. A character
  1715. also cannot be resized beyond the boundaries of the cell box, so if the
  1716. global resizing would expand a particular character beyond this limit, that
  1717. character will be resized only as far as possible.
  1718.  
  1719. After choosing this function, you will first be asked to provide a horizontal
  1720.  
  1721.           FONTEDIT, (C) by Alexander Walter                      Page 32
  1722.  
  1723.  
  1724.  
  1725. change in the range of +/- 20 pixels. You can press Escape to abort. After
  1726. entering the horizontal change, you will be asked to input the vertical
  1727. change. When you press Enter, the global resizing will commence. As usual,
  1728. the top left corner of the character is anchored, and the bottom and right
  1729. sides will change. 
  1730.  
  1731.  
  1732.  
  1733. 5.2.3.19.  Counterclockwise
  1734.  
  1735. This works just like its counterpart under the Image Transformations menu,
  1736. except that this will operate on all characters having an ASCII value equal
  1737. to or greater than the start ASCII parameter described below. The default
  1738. value for start ASCII is 0. 
  1739.  
  1740. An example of when you would want to rotate a font this way is to be able to
  1741. print in columns from top to bottom, instead of rows left to right.
  1742.  
  1743.  
  1744.  
  1745. 5.2.3.20.  Invert
  1746.  
  1747. This works just like its counterpart under the Image Transformations menu,
  1748. except that this will operate on all characters having an ASCII value equal
  1749. to or greater than the start ASCII parameter described below. The default
  1750. value for start ASCII is 0.
  1751.  
  1752.  
  1753.  
  1754. 5.2.3.21.  Hollow.
  1755.  
  1756. This works just like its counterpart under the Image Transformations menu,
  1757. except that this will operate on all characters having an ASCII value equal
  1758. to or greater than the start ASCII parameter described below. The default
  1759. value for start ASCII is 0.
  1760.  
  1761.  
  1762.  
  1763. 5.2.3.22.  Thinner.
  1764.  
  1765. This works just like its counterpart under the Image Transformations menu,
  1766. except that this will operate on all characters having an ASCII value equal
  1767. to or greater than the start ASCII parameter described below. The default
  1768. value for start ASCII is 0.
  1769.  
  1770.  
  1771.  
  1772. 5.2.3.23.  Mirror Image.
  1773.  
  1774. This works just like its counterpart under the Image Transformations menu,
  1775. except that this will operate on all characters having an ASCII value equal
  1776.  
  1777.           FONTEDIT, (C) by Alexander Walter                      Page 33
  1778.  
  1779.  
  1780.  
  1781. to or greater than the start ASCII parameter described below. The default
  1782. value for start ASCII is 0.
  1783.  
  1784.  
  1785.  
  1786. 5.2.3.24.  Upside-Down
  1787.  
  1788. This works just like its counterpart under the Image Transformations menu,
  1789. except that this will operate on all characters having an ASCII value equal
  1790. to or greater than the start ASCII parameter described below. The default
  1791. value for start ASCII is 0.
  1792.  
  1793.  
  1794.  
  1795. 5.2.3.25.  Slant.
  1796.  
  1797. This works similarly to its counterpart under the Image Transformations menu,
  1798. except that this will operate on all characters having an ASCII value equal
  1799. to or greater than the start ASCII parameter described below. The default
  1800. value for start ASCII is 0.
  1801.  
  1802. Since a character after slanting cannot extend outside the cell box, the
  1803. sizes of all characters at and above the start ASCII value will be checked to
  1804. see what the maximum allowable slant would be. The desired amount of slant in
  1805. units of pixels is entered numerically, with positive numbers being a
  1806. rightward slant, and negative numbers being a leftward slant. If the
  1807. allowable amount of slant is not enough, try increasing the font's cell width
  1808. and/or cell height.
  1809.  
  1810.  
  1811.  
  1812. 5.2.3.26.  Tilt.
  1813.  
  1814. This works just like its counterpart under the Image Transformations menu,
  1815. except that this will operate on all characters having an ASCII value equal
  1816. to or greater than the start ASCII parameter described below. The default
  1817. value for start ASCII is 0.
  1818.  
  1819. Since a character after tilting cannot extend outside the cell box, the sizes
  1820. of all characters at and above the start ASCII value will be checked to see
  1821. what the maximum allowable tilt would be. The desired amount of tilt in units
  1822. of pixels is entered numerically, with positive numbers being a downward
  1823. tilt, and negative numbers being an upward tilt. If the allowable amount of
  1824. tilt is not enough, try increasing the font's cell width and/or cell height.
  1825.  
  1826.  
  1827.  
  1828. 5.2.3.27.  Drop Shadow.
  1829.  
  1830. This works just like its counterpart under the Image Transformations menu,
  1831. except that this will operate on all characters having an ASCII value equal
  1832.  
  1833.           FONTEDIT, (C) by Alexander Walter                      Page 34
  1834.  
  1835.  
  1836.  
  1837. to or greater than the start ASCII parameter described below. The default
  1838. value for start ASCII is 0.
  1839.  
  1840. For guidance on entering the horizontal and vertical offsets, see the
  1841. discussion above for slant and tilt.
  1842.  
  1843.  
  1844.  
  1845. 5.2.3.28.  Bolder.
  1846.  
  1847. This works just like its counterpart under the Image Transformations menu,
  1848. except that this will operate on all characters having an ASCII value equal
  1849. to or greater than the start ASCII parameter described below. The default
  1850. value for start ASCII is 0.
  1851.  
  1852.  
  1853.  
  1854. 5.2.3.29.  Start ASCII
  1855.  
  1856. This displays the current value of the starting ASCII variable, and allows
  1857. you to change it. This variable defines the starting ASCII value for which
  1858. the font transformations will be applied. Some ASCII values are 48 for "0",
  1859. 65 for "A", and 97 for "a".
  1860.  
  1861. The inputted number is interpreted as decimal by default. To input a
  1862. hexadecimal number, prefix it with "&h", and to input an octal number, prefix
  1863. it by "&o". For instance, to choose "A" (65 decimal, 41 hex, or 101 octal),
  1864. enter either "65", "&h41", or "&o101".
  1865.  
  1866. During global transformations, if you want to stop the processing at a
  1867. particular ASCII value instead of letting it run to the end of the font,
  1868. simply press Escape while FONTEDIT is transforming the last character you
  1869. want to have transformed.
  1870.  
  1871.  
  1872.  
  1873. 5.2.4.  Replicate
  1874.  
  1875. This function replicates the currently displayed character to another ASCII
  1876. value. The new ASCII value must be one which is currently undefined. If
  1877. necessary, first delete the ASCII character to be overwritten by using F8
  1878. from the Main Menu.
  1879.  
  1880. Upon choosing the Replicate function, you will be presented a list of unused
  1881. ASCII characters. When you choose one, the ASCII character which was
  1882. displayed prior to choosing Replicate will be copied to the new ASCII value,
  1883. and you will be in Pixel Edit mode for the new character.
  1884.  
  1885.  
  1886.  
  1887. 5.2.5.  New Font
  1888.  
  1889.           FONTEDIT, (C) by Alexander Walter                      Page 35
  1890.  
  1891.  
  1892.  
  1893.  
  1894. New Font is a choice made from the Main Menu, and can be made only if the the
  1895. font file being edited contains multiple font definitions. If it does and you
  1896. select New Font, you will be presented a list of the available fonts along
  1897. with their point size and orientation (portrait or landscape). Make your
  1898. choice by number. You will be returned to the Main Menu, and if "A" is
  1899. defined in the new font, it will be displayed.
  1900.  
  1901.  
  1902.  
  1903. 5.2.6.  Create New Char.
  1904.  
  1905. Create New Character is a choice from the Main Menu. It allows you to define
  1906. characters for ASCII values which previously had no symbol in the font. All
  1907. members of the LaserJet family can print characters with ASCII values from 32
  1908. - 127, and 160 - 255 inclusive. Additionally, the LaserJet Series II and
  1909. above can print characters with ASCII values from 1 - 6, 16 - 26, and 28 -
  1910. 255 inclusive. FONTEDIT supports the creation and editing of all of these
  1911. ASCII values.
  1912.  
  1913. When you choose the Create New Character option, you will be presented a list
  1914. of the available, unused ASCII values in the font. To pick, point and shoot
  1915. with the mouse, or else if no mouse is installed, move the reverse-video
  1916. highlight with the arrow keys and press ENTER. As a shortcut, you can press
  1917. the character's button rather than click on the ASCII value. For instance, if
  1918. you want to create the digit "1" (assuming it doesn't already exist), you can
  1919. either click on the ASCII value of 49, or you can press the "1" on your
  1920. keyboard when you see the list of ASCII values. Press ESC at any time to
  1921. cancel back to the Main Menu.
  1922.  
  1923. After you pick an ASCII value to define, FONTEDIT will create a blank
  1924. character with a default size of half the cell box width and half the cell
  1925. box height. You will then be put into Pixel Editing mode, where all the pixel
  1926. editing tools, including resizing the character box and moving it around
  1927. within the cell box, are available to you. When you are done, exit from Pixel
  1928. Editing as usual, and you will be at the Main Menu.
  1929.  
  1930. If at this point you change your mind about defining a new character, you can
  1931. delete it using the Delete Character option described below.
  1932.  
  1933.  
  1934.  
  1935. 5.2.7.  Delete Character
  1936.  
  1937. Delete Character is a choice from the Main Menu. It allows you to delete the
  1938. definition of a character from the font after confirmation from the user. The
  1939. definition of the character is removed from the font file, and the font file
  1940. will become smaller. The deleted ASCII value becomes available to the Create
  1941. New Character option.
  1942.  
  1943.  
  1944.  
  1945.           FONTEDIT, (C) by Alexander Walter                      Page 36
  1946.  
  1947.  
  1948.  
  1949.  
  1950. 5.2.8.  Printer Support
  1951.  
  1952. This selection allows you to print either text files or text echoed from the
  1953. keyboard, using either the soft font being edited or one of the built-in
  1954. fonts in the LaserJet. All printer output is directed to the DOS device PRN.
  1955. Upon choosing this option, the Status Line will read:
  1956.  
  1957.                    Download Font & Other Printer Functions"
  1958.  
  1959. the menu choices will read:
  1960.  
  1961.   F2 = Download Font
  1962.   F3 = Print File
  1963.   F4 = Echo Text
  1964.   F5 = Page Eject
  1965.   F6 = Select Font ID(1)
  1966.   F7 = Built-in Fonts
  1967.   ESC= Main Menu
  1968.  
  1969. notes:
  1970.  
  1971.   1. Shown only if there is no font ID already embedded in the font file.
  1972.  
  1973.  
  1974.  
  1975. 5.2.8.1.  Download Font
  1976.  
  1977. This downloads the font to the printer and automatically selects it until
  1978. further notice for subsequent text to be printed. Font ID 1 is automatically
  1979. assigned unless a font ID is already embedded within the font.
  1980.  
  1981.  
  1982.  
  1983. 5.2.8.2.  Print File
  1984.  
  1985. This prints a text file from disk using the latest font selected, either the
  1986. downloaded font or a built-in font. Wildcards can be used when selecting the
  1987. file.
  1988.  
  1989.  
  1990.  
  1991. 5.2.8.3.  Echo Text
  1992.  
  1993. This will echo text from the keyboard to the printer using the latest font
  1994. selected, either the downloaded font or a built-in font. Each line is sent to
  1995. the printer only when RETURN is pressed. A page will not be ejected until F5
  1996. is pressed or until the page is full.
  1997.  
  1998.  
  1999.  
  2000.  
  2001.           FONTEDIT, (C) by Alexander Walter                      Page 37
  2002.  
  2003.  
  2004.  
  2005. 5.2.8.4.  Eject Page
  2006.  
  2007. This sends a form feed character (ASCII 12) to the printer.
  2008.  
  2009.  
  2010.  
  2011. 5.2.8.5.  Select Font ID
  2012.  
  2013. This allows a font ID to be chosen for use when downloading the font to the
  2014. printer. This choice is seen only if there is no font ID already embedded in
  2015. the font. The new font ID can be chosen from the range 1 to 99, with a
  2016. default value of 1. It is not necessary to specify a font ID before
  2017. downloading; "1" will be used by default if no other font IDs have been
  2018. issued.
  2019.  
  2020.  
  2021.  
  2022. 5.2.8.6.  Built-in Fonts
  2023.  
  2024. This choice will allow selecting one of the following fonts, the first 6 of
  2025. which are internal to the LaserJet:
  2026.  
  2027.   -   Portrait Courier
  2028.   -   Bold Portrait Courier
  2029.   -   Portrait TTY
  2030.   -   Landscape Courier
  2031.   -   Bold Landscape Courier
  2032.   -   Landscape TTY
  2033.   -   Previous soft font (only if one has already been downloaded)
  2034.  
  2035. Note that switching between a landscape and a portrait font will cause the
  2036. LaserJet to eject a page.
  2037.  
  2038.  
  2039.  
  2040. 5.2.9.  Import TIFF
  2041.  
  2042. This selection allows TIFF graphics to be imported to unused ASCII values. If
  2043. necessary, first delete the old character using the "Delete Char." option
  2044. from the Main Menu. Note that PCX is the preferred format for importing from
  2045. a graphics image.
  2046.  
  2047. The TIFF image must be black and white; color images aren't supported. The
  2048. image can be uncompressed or packed (Huffman coded), but FAX compression
  2049. isn't supported.
  2050.  
  2051. After specifying the TIFF filename from which to import, you will then see a
  2052. list of unused ASCII values in the current font being edited. Choose which
  2053. one will receive the imported character. As a shortcut, you can press the
  2054. character's button rather than click on the ASCII value. For instance, if you
  2055. want to import the TIFF graphics to the digit "1", you can either click on
  2056.  
  2057.           FONTEDIT, (C) by Alexander Walter                      Page 38
  2058.  
  2059.  
  2060.  
  2061. the ASCII value of 49, or you can press the "1" on your keyboard when you see
  2062. the list of ASCII values.
  2063.  
  2064. If the image is smaller than the cell box, it will be imported immediately
  2065. and centered in the cell box.
  2066.  
  2067. If the image is larger than the cell box width or height, a portion of it
  2068. must be chosen for importing. In this case, the image will be displayed on
  2069. the screen. If it is too tall to display using the present display mode (>187
  2070. for CGA, >331 for EGA, >459 for VGA), the bottom will be clipped off. Also,
  2071. if the image is less than 638 pixels across, it will be displayed as is.
  2072. However, if it is wider than this, you will be presented a compressed image
  2073. in which each pixel displayed represents an average of 8 adjacent pixels on
  2074. that row.
  2075.  
  2076. In any event, if the TIFF image is larger than the cell box width or height,
  2077. a blinking box will appear. If the TIFF width is less than 638 pixels, the
  2078. blinking box represents the cell box size, and can be moved anywhere around
  2079. the image using the mouse or arrow keys.
  2080.  
  2081. If the TIFF width is greater than 638 pixels, the blinking box represents
  2082. which subportion of the TIFF image should be expanded for further
  2083. examination; the box is sized to represent how much of the image can be shown
  2084. uncompressed on the screen. The message at the top will direct you to press
  2085. F3 when the box is positioned correctly. Upon pressing F3, that portion of
  2086. the compressed image will be uncompressed to its full screen size, and the
  2087. blinking box will be resized to represents the cell box size.
  2088.  
  2089. The compressed image may not display reliably in EGA mode. If there are any
  2090. problems in EGA mode, try using CGA mode. This is forced by using the "/cga"
  2091. switch when starting FONTEDIT.
  2092.  
  2093. When you have positioned the box over the portion of the TIFF image to
  2094. import, click the mouse or press F10. If the cell box is too small to cover
  2095. the portion of the image you want to import, you can either cancel and go to
  2096. the Font Operators menu to change the Cell Width or Cell Height, or you can
  2097. shrink the image using any paint software you have.
  2098.  
  2099. After the image is imported, you are put into Pixel Edit mode. You can clean
  2100. up the image, delete rows or columns, etc. Very commonly with images from a
  2101. hand scanner, the image will be slightly crooked since it is hard to hold the
  2102. scanner for a perfectly straight and level scan. In this case, you can use
  2103. the Slant and Tilt options from the Image Transforms menu to help fix the
  2104. image. You will not be allowed to quit from pixel editing without saving the
  2105. character. If you truly want to discard the imported character, you can
  2106. choose the "Delete Char." option from the Main Menu.
  2107.  
  2108.  
  2109.  
  2110. 5.2.10.  Quit
  2111.  
  2112.  
  2113.           FONTEDIT, (C) by Alexander Walter                      Page 39
  2114.  
  2115.  
  2116.  
  2117. Quit is a choice from the main menu. It allows you to exit from FONTEDIT, and
  2118. in the enhanced version of FONTEDIT it will write the changes you made to the
  2119. font file.
  2120.  
  2121.  
  2122.  
  2123. 5.2.11.  VGA Text Colors
  2124.  
  2125. If you are using a VGA display, you can customize the colors used to display
  2126. graphics and text by pressing Shift-F2 from the Main Menu.  The default
  2127. startup color is light green on dark blue.
  2128.  
  2129. The foreground color is used for screen text, "on" pixels, and gridlines. The
  2130. background color is used for "off" pixels and the rest of the screen's
  2131. background. When you select this function from the Main Menu, you initially
  2132. will be changing the forground colors.  F6 toggles between controlling the
  2133. foreground and background colors.
  2134.  
  2135. The foreground and background colors are specified by their red, green, and
  2136. blue (RGB) components. The components can be changed in two ways. The first
  2137. way is to press the appropriate F key and enter a number from 0 to 63
  2138. directly.
  2139.  
  2140. The second way is to notice that one of the RGB components has a small arrow
  2141. next to it. This defines the selected component. To change the selected
  2142. component's value, press the up or down arrows. To change which RGB component
  2143. is the selected component, press the left or right arrows.
  2144.  
  2145. FONTEDIT saves your color preferences in the file "fontedit.cfg", and these
  2146. colors will be used next time you start up FONTEDIT.
  2147.  
  2148.  
  2149.  
  2150. 5.2.12.  Exp. Factors
  2151.  
  2152. Direct control of the magnification values can be obtained by pressing
  2153. Shift-F3 from the Main Menu. Magnification is used to change the size of the
  2154. characters displayed on the screen. Normally, it will not be necessary to use
  2155. this option, since FONTEDIT will automatically choose magnification factors
  2156. which fill up the screen as much as possible while maintaining a "pleasing"
  2157. ratio of width to height.
  2158.  
  2159. The smaller the magnification factor, the smaller the character display will
  2160. be, and vice versa. This feature could be used to approximate on screen how
  2161. the printed character will look, although because of the screen's resolution
  2162. it is not possible to duplicate the 300 dot per inch resolution of the
  2163. printer.
  2164.  
  2165. When Shift-F3 is used, FONTEDIT will display the present magnification
  2166. factors and prompt you for new factors. The factors are displayed in the form
  2167. X,Y. This means that every pixel in the character is composed of "X" rows and
  2168.  
  2169.           FONTEDIT, (C) by Alexander Walter                      Page 40
  2170.  
  2171.  
  2172.  
  2173. "Y" columns of pixels on the screen. Magnification factors of 1,1 are the
  2174. smallest that can be displayed; the largest depends on the cell width and
  2175. cell height of the font being displayed, and upon the display adaptor used.
  2176.  
  2177. Magnification factors are inputted in the form X,Y including comma. If either
  2178. X or Y is omitted, the present value of the missing X or Y is used. Pressing
  2179. Return without supplying X or Y will keep the present values.
  2180.  
  2181.  
  2182.  
  2183. 5.2.13.  <Print Shop Icon
  2184.  
  2185. This option allows you to import a Print Shop icon. These are not the same as
  2186. a Print Shop graphics file.
  2187. After specifying the filename to import, choose by number which icon within
  2188. the file should be imported.
  2189.  
  2190.  
  2191.  
  2192. 5.2.14.  Import PCX
  2193.  
  2194. This selection is made by pressing Shift-F10 from the Main Menu, and allows
  2195. PCX graphics to be imported to unused ASCII values. It is similar to the
  2196. Import TIFF function, except that the source image is in the PCX format. Only
  2197. binary (black & white) images can be imported.
  2198.  
  2199. When the PCX picture is bigger than the screen, the Import PCX function works
  2200. slightly differently than the Import TIFF function. In this situation, at
  2201. first there is no blinking box, and the screen is filled as much as possible
  2202. by the upper left portion of the PCX picture. If the part of the PCX picture
  2203. you want to import is off-screen, use the arrow keys, PgUp, PgDn, Home, or
  2204. End keys to scroll the picture until the portion you want to import is
  2205. visible, then press Enter. Once you press Enter, a blinking box appears to
  2206. show which part of the PCX picture will be imported. Move the blinking box
  2207. with the arrow keys, PgUp, PgDn, Tab, or Shift-Tab keys. The dimensions of
  2208. the blinking box are controlled by the font's cell width and cell height. If
  2209. the blinking box is not big enough, it can be made bigger by increasing the
  2210. cell width and cell height from the Font Operations menu.
  2211.  
  2212. Once the blinking box covers the part you want to import, press F10 or click
  2213. the mouse to import it. You will then be taken into pixel edit mode for the
  2214. new character where you can trim off extra rows and columns or delete stray
  2215. pixels, etc.
  2216.  
  2217.  
  2218.  
  2219. 5.2.15.  Import Soft Font
  2220.  
  2221. This selection is made by pressing CTRL-F10 from the Main Menu, and allows a
  2222. character from another soft font to be imported to unused ASCII values. Upon
  2223. choosing this option and supplying the name of the font file to import, you
  2224.  
  2225.           FONTEDIT, (C) by Alexander Walter                      Page 41
  2226.  
  2227.  
  2228.  
  2229. will be presented a list of ASCII values from that soft font. The character
  2230. to import can be chosen either by its ASCII value, or by pressing its
  2231. keyboard button. For instance, if you want to import the digit "1", you can
  2232. either click on the ASCII value of 49, or you can press the "1" on your
  2233. keyboard when you see the list of ASCII values.
  2234.  
  2235. After picking which ASCII character to import, you will then see a list of
  2236. unused ASCII values in the current font being edited. Choose which one will
  2237. receive the imported character. Again, as a shortcut, you can press the
  2238. character's button rather than click on the ASCII value.
  2239.  
  2240. After choosing the destination ASCII value, importing the character proceeds
  2241. exactly like importing a character from a TIFF graphics image.
  2242.  
  2243.  
  2244.  
  2245. 5.2.16.  Pick ASCII
  2246.  
  2247. This menu choice allows you to select an ASCII character to display. This may
  2248. be needed when running FONTEDIT on PCs without numeric keypads, since the
  2249. conventional way of displaying a character without an associated key on the
  2250. keyboard is to press and hold the ALT key, type the 3-digit ASCII value on
  2251. the numeric keypad, then release the ALT key. Without a numeric keypad, use
  2252. the Pick ASCII menu choice instead.
  2253.  
  2254. The inputted number is interpreted as decimal by default. To input a
  2255. hexadecimal number, prefix it with "&h", and to input an octal number, prefix
  2256. it by "&o". For instance, to choose "A" (65 decimal, 41 hex, or 101 octal),
  2257. enter either "65", "&h41", or "&o101".
  2258.  
  2259.  
  2260.  
  2261. 6.  Tips
  2262.  
  2263. Below are a few tips for using FONTEDIT, based on interest from user
  2264. feedback.
  2265.  
  2266.  
  2267.  
  2268. 6.1.  Scanning and Importing Graphics
  2269.  
  2270. In this version of FONTEDIT, .PCX is the preferred import format since it is
  2271. much faster than .TIF support, and you can scroll .PCX images which are
  2272. bigger than your screen. You won't be limited to importing from the "top" of
  2273. a .PCX image, whereas you will still have this limitation with .TIF images.
  2274.  
  2275. Whn importing from .TIF graphics, characters must be selected from the "top"
  2276. of the image. "Top" varies with the graphics mode; it varies from the top 459
  2277. lines in VGA mode, down to the top 187 lines in CGA mode. If your graphics is
  2278. wider than 637 pixels, you will first be shown a compressed image. Note that
  2279. at 300 dpi, a scan of 459 x 637 pixels is roughly 1.5" H x 2" W. When
  2280.  
  2281.           FONTEDIT, (C) by Alexander Walter                      Page 42
  2282.  
  2283.  
  2284.  
  2285. possible, try to crop the .TIF image so that it is as small as possible.
  2286.  
  2287. If using a scanner, set your scanner's resolution to 300 dots per inch (dpi)
  2288. will match the Laserjet's 300 dpi resolution, making your new characters the
  2289. same physical size as your sample notes. Otherwise, you may need to use the
  2290. Resize Character option (Shift-F2 from the Image Transform Menu).
  2291.  
  2292. Graphic images must be black & white line art, not color. If possible, set
  2293. color scanners to black & white mode. Gray scale images may or may not work.
  2294.  
  2295. To create characters from a scanned image where the upper and lower case
  2296. characters are similar (for instance "X" and "x", or "C" and "c"), first
  2297. import the upper case version and clean it up. Then create the lower case
  2298. version by copying it to the new ascii value and resizing it. It is easier to
  2299. create a clean lower case character this way than trying to import it, since
  2300. the scanned image may be full of stray pixels.
  2301.  
  2302.  
  2303.  
  2304. 6.2.  Very Large Point Sizes
  2305.  
  2306. Very large point sizes use a lot of RAM, both in FONTEDIT and within the
  2307. printer. The tips below will help deal with these memory requirements when
  2308. working with very large point sizes (around 100 point). For all other
  2309. situations, no special precautions should be necessary.
  2310.  
  2311. Before starting FONTEDIT, make sure you have as much RAM free as possible. Do
  2312. this by removing nonessential TSRs from your autoexec.bat, and device drivers
  2313. from config.sys. Or as an alternative, use an expanded memory manager (such
  2314. as HIMEM.SYS or QEMM.SYS) to load these items high. Don't reduce the number
  2315. of "FILES=" in your config.sys to less than 10 to 15 or so.
  2316.  
  2317. The amount of working RAM needed when resizing a font depends on the point
  2318. size of both the starting size and desired size. So it will take less RAM to
  2319. resize from a smaller size to a very big size, compared to resizing from a
  2320. big size to an even bigger size.
  2321.  
  2322. The size of the file will grow by about the square of the change in point
  2323. size, so make sure you have enough free disk space available. For instance,
  2324. if you double the point size, the file will roughly quadruple in size.
  2325. FONTEDIT will also need working space on the hard disk equal to the size of
  2326. the new font file.
  2327.  
  2328. Delete any unnecessary characters from the font before you resize it. Not
  2329. only will FONTEDIT be able to resize the font faster because there is less
  2330. work to do, but you will also save memory in your printer when you download
  2331. the font.
  2332.  
  2333. In the remaining characters, check whether any have blank rows or columns
  2334. around the edges. If so, delete these blank rows/columns by using the Ins/Del
  2335. Row/Col option from the pixel edit menu.
  2336.  
  2337.           FONTEDIT, (C) by Alexander Walter                      Page 43
  2338.  
  2339.  
  2340.  
  2341.  
  2342. Move the remaining characters higher in the cell box by decreasing the
  2343. baseline position (F10 from the Font Operations Menu). Then make the font's
  2344. cell width and cell height as small as possible. These are changed via F2 and
  2345. F3 from the Font Operations Menu.
  2346.  
  2347. After deleting unnecessary characters and changing the cell width and height,
  2348. you may find it more accurate to calculate the point size directly from the
  2349. number of pixel rows in a character rather than relying on the original point
  2350. size of the font. Since the LaserJet prints at 300 pixels per inch, and in
  2351. typography 1 inch equals 72 points, there are 4.167 pixels per point size, or
  2352. conversely 0.24 points per pixel. For instance, a font of 110 point size
  2353. should have a vertical size of 458 pixels.
  2354.  
  2355. Once you have successfully resized the font, save your intermediate results
  2356. by immediately quitting FONTEDIT and copying the file. Then you can restart
  2357. FONTEDIT and edit the characters to touch them up.
  2358.  
  2359. Certain functions while pixel editing will require more RAM. These include
  2360. the Image Transform functions EXCEPT for Invert and Upside-Down. Avoid the
  2361. rest of the Image Transforms if you can.
  2362.  
  2363. To reiterate, these suggestions should only be necessary for very large point
  2364. sizes. For most other application, no special steps should be necessary.
  2365.  
  2366.  
  2367.  
  2368. 6.3.  Using Bitmapped Printer Fonts with Windows 3.1
  2369.  
  2370. You can use bitmapped printer fonts with Microsoft Windows 3.1. Below is a
  2371. step-by-step procedure for installing a bitmapped printer font:
  2372.  
  2373.   1.  Copy the font to a subdirectory on your hard disk (say for this
  2374.       example, "c:\fonts").
  2375.   2.  From the Windows Program Manager, double-click on the Main Group icon.
  2376.   3.  Double-click on the Control Panel icon.
  2377.   4.  Double-click on the Printers icon.
  2378.   5.  Highlight a LaserJet printer if it isn't already highlighted. Click on
  2379.       the Setup button.
  2380.   6.  Click on the Fonts button.
  2381.   7.  Click on the Add Fonts button.
  2382.   8.  Type in the drive and directory of your hard disk where you copied the
  2383.       bitmapped font you want to install, then press Enter (the drive &
  2384.       directory should agree with step 1 above, i.e., "c:\fonts").
  2385.   9.  Windows will now scan all the files in the directory you specified, and
  2386.       will list in a box on the right side of the window all the bitmapped
  2387.       fonts it found. Note that the description of the font in the box is
  2388.       derived from the Typeface field in the font header, not from the font's
  2389.       filename. Highlight the font you want to install, and click on the Add
  2390.       button.
  2391.   10. Windows will ask you if it can copy the font to a directory, usually
  2392.  
  2393.           FONTEDIT, (C) by Alexander Walter                      Page 44
  2394.  
  2395.  
  2396.  
  2397.       "\pclfonts". Click on the OK button.
  2398.   11. The font is now installed. Back out of all the windows by clicking on
  2399.       the OK, Close, or Cancel buttons as appropriate.
  2400.  
  2401. You can now print documents on your LaserJet with this font. However, you
  2402. won't be able to see the font on screen as you type; Windows will substitute
  2403. the closest font in terms of point size, weight, etc.
  2404.  
  2405. When you want to format a document with this font, select the font by the
  2406. name reported in step 9 above. You will only be able to use it in the point
  2407. size installed, but of course you can use FONTEDIT to create fonts of other
  2408. point sizes. If you change the point size of the bitmapped font you
  2409. installed, you should install it again.
  2410.  
  2411.  
  2412.  
  2413. 7.  Troubleshooting
  2414.  
  2415. This section presents a few troubleshooting hints for error conditions that
  2416. might arise when using FONTEDIT. This doesn't include problems related to
  2417. font design.
  2418.  
  2419.  
  2420.  
  2421. 7.1.  Before Starting FONTEDIT
  2422.  
  2423. Below are some error conditions or messages you may encounter when starting
  2424. FONTEDIT, and remedies. Also, your "config.sys" file should allow at least 10
  2425. files to be opened (i.e., it should include the statement "FILES=10"). More
  2426. than 10 is OK, too.
  2427.  
  2428. * "Input Run-Time Module Path:"  Quit FONTEDIT with a Ctrl-C, and make sure
  2429.   that the run time module "brun45.exe" is in either the current directory or
  2430.   a directory in your DOS Path.
  2431.  
  2432. * The font is not recognized as a valid font file:  Make sure the name was
  2433.   spelled correctly.  Make sure the font is bitmapped, not TrueType, ATM,
  2434.   Postscript, or other scalable format.
  2435.  
  2436. * FONTEDIT won't start, and returns you to MS-DOS:  Make sure that no
  2437.   executable compressor such as pklite or lzexe has been used on the files
  2438.   "brun45.exe" or "helv9b.exe". However, the DoubleSpace compressor in MS-DOS
  2439.   6.0 should cause no problem.
  2440.  
  2441. * "Enter path to file HELV9B.EXE:"  FONTEDIT was unable to find the overlay
  2442.   file "helv9b.exe". Enter the directory where this file can be found. In the
  2443.   future, make sure "helv9b.exe" is in either the current directory or a
  2444.   directory in your DOS Path.
  2445.  
  2446.  
  2447.  
  2448.  
  2449.           FONTEDIT, (C) by Alexander Walter                      Page 45
  2450.  
  2451.  
  2452.  
  2453. 7.2.  While Running FONTEDIT
  2454.  
  2455. * When Pixel Editing, the mouse behaves erratically, such as toggling pixels
  2456.   far removed from where the mouse was clicked:  Your mouse driver may be
  2457.   old. FONTEDIT works fine with Microsoft mouse driver version 8.20a and
  2458.   higher. This mouse driver version is available by calling FONTEDIT
  2459.   technical support at the number listed in section 2.
  2460.  
  2461. * When printing a document more than a few pages long, you get a "Printer not
  2462.   ready" error, even though it has enough paper, is on-line, etc.:   Make
  2463.   sure that your "autoexec.bat" file has in it the command:
  2464.  
  2465.                                  mode lpt1:,,p
  2466.  
  2467.   This tells the PC to use infinite retry when printing.  Normally, PC will
  2468.   send printable material to the printer faster than it can print it.  This
  2469.   command will make sure the PC will wait long enough for the printer to
  2470.   catch up.
  2471.  
  2472. * Can't select ASCII 224, 240, or 253 for editing using the Alt-Numeric-
  2473.   Keyboard method: This is a known compiler bug, not a bug of FONTEDIT. If
  2474.   you try to select ASCII 240 by holding down the Alt key and pressing "240"
  2475.   from the numeric keypad, the PC will seem to freeze until you press Ctrl-C.
  2476.  
  2477.   If you try to select ASCII 224 or 253 from the numeric keypad, the compiler
  2478.   bug causes these two ASCII characters to be ignored.  To select them, use
  2479.   Ctrl-Return from the Main Menu, or use the arrow keys to scroll through
  2480.   characters.
  2481.  
  2482.  
  2483.  
  2484. 7.3.  Error Codes
  2485.  
  2486. For common error conditions, such as trying to print while the printer is
  2487. off-line or out of paper, FONTEDIT will return an informative error message.
  2488. For less common error conditions, only an error code may be returned. Below
  2489. are the less common error codes that may occur while using FONTEDIT. If any
  2490. of these occur, call technical support at the number(s) listed in section 2.
  2491.  
  2492. Code  Meaning and Remedy               Code  Meaning and Remedy
  2493. ----  ---------------------------      ----  ---------------------------
  2494.   5   Illegal function call              57  Device I/O error
  2495.   6   Overflow                           61  Disk full.  The edited font file
  2496.   7   Out of memory. Try unloading           has not been completely written
  2497.       TSRs and otherwise freeing up          to disk and thus may be
  2498.       memory in the lower 640K. Also         corrupted. Discard and use the
  2499.       see section 6 on handling very         backup copy of the font after
  2500.       large point sizes with                 creating more free disk space.
  2501.       FONTEDIT.                          62  Input past end of file
  2502.   9   Subscript out of range             63  Bad record number
  2503.   11  Division by zero                   67  Too many files. Try increasing
  2504.  
  2505.           FONTEDIT, (C) by Alexander Walter                      Page 46
  2506.  
  2507.  
  2508.  
  2509.   14  Out of string space.                   the number of files in your
  2510.   19  No resume                              "config.sys".
  2511.   20  Resume without error               71  Disk not ready
  2512.   51  Internal error                     72  Disk media error
  2513.   52  Bad file name or number            75  Path/File access error
  2514.   54  Bad file mode                      76  Path not found.
  2515.   55  File already open
  2516.  
  2517.  
  2518. 8.  Sample Session
  2519.  
  2520. Two sample sessions are included below as a way of demonstrating how to use
  2521. FONTEDIT . They will create 1) a Gantt milestone character (D); and 2) a
  2522. registered trademark symbol (R).
  2523.  
  2524.  
  2525.  
  2526. 8.1.  Gantt Milestone Character
  2527.  
  2528. The objective of this sample session will be to create a special symbol used
  2529. when printing Gantt timing charts. The symbol we will create is ASCII 127.
  2530. This symbol is a hollow, upward-pointing triangle and is used by the
  2531. on-screen display of Timeline to signify a milestone. However, most font
  2532. files do not include this character, so we must either make do with a
  2533. substitute or define our own. When printing a Gantt file to disk, Timeline
  2534. uses ASCII 127 as the milestone character, so we will edit ASCII 127.
  2535.  
  2536. Start up FONTEDIT and choose your font file. When you get to the main menu,
  2537. try displaying ASCII 127. Since it is not represented by a key on the
  2538. keyboard, you will have to hold down the ALT key, press 127 on the numeric
  2539. keypad, and then let go of the ALT key. If nothing happens on the screen,
  2540. this means ASCII 127 is not defined in the font file. You will have to Create
  2541. a New Character. If so, choose F7 from the main menu. Highlight "127" from
  2542. the list you see and either click the mouse or press ENTER. You will now be
  2543. in Pixel Edit mode for ASCII 127.
  2544.  
  2545. If ASCII 127 already exists in your font file, press F2 from the Main Menu to
  2546. begin editing it.
  2547.  
  2548. In Pixel Edit mode, perform the following steps to create a hollow, upward
  2549. pointing triangle. At all times we will be choosing from the menu options
  2550. displayed along the top and top right of the screen.
  2551.  
  2552.   -   Press F4 to clear the character entirely.
  2553.   -   Press F3 to begin Area Operations.
  2554.   -   Press F3 to choose a polygon shape.
  2555.   -   Go to the top of the character box and mark this as the apex (top) of
  2556.       the triangle by either pressing the left mouse button (if a mouse is
  2557.       installed), or by pressing RETURN (if no mouse is installed).
  2558.   -   Go to the lower left corner of the character box and mark it as the
  2559.       lower left corner of the triangle by pressing either the left mouse
  2560.  
  2561.           FONTEDIT, (C) by Alexander Walter                      Page 47
  2562.  
  2563.  
  2564.  
  2565.       button or RETURN.
  2566.   -   Go to the lower right corner of the character box and mark it as the
  2567.       lower right corner of the triangle by pressing either the left mouse
  2568.       button or RETURN.
  2569.   -   Complete the triangle by pressing either the right mouse button (if
  2570.       using a mouse), or F10 (if not using a mouse).
  2571.   -   Move the mouse cursor or crosshairs to the interior of the triangle and
  2572.       press F3 to Fill it.
  2573.  
  2574. We now have a solid, upward pointing triangle on screen. But we want a hollow
  2575. triangle. So we will repeat the process above for a smaller triangle within
  2576. the solid triangle, but instead of filling it we will clear it.
  2577.  
  2578.   -   Press F3 to choose a polygon shape.
  2579.   -   Go to a point about 4 pixels below the apex of the solid triangle and
  2580.       press the left mouse button or RETURN.
  2581.   -   Go to a point about 4 pixels above and to the right of the lower left
  2582.       corner of the character box and mark it as the lower left corner of the
  2583.       triangle by pressing either the left mouse button or RETURN.
  2584.   -   Go to a point about 4 pixels above and to the left of the lower right
  2585.       corner of the character box and mark it as the lower right corner of
  2586.       the triangle by pressing either the left mouse button or RETURN.
  2587.   -   Complete the triangle by pressing either the right mouse button (if
  2588.       using a mouse), or F10 (if not using a mouse).
  2589.   -   Move the mouse cursor or crosshairs to the interior of the triangle and
  2590.       press F4 to Clear it.
  2591.   -   Press ESC to go to Pixel Editing. You can do pixel-by-pixel touchup of
  2592.       the character if you wish.
  2593.   -   Press F10 to save your changes
  2594.  
  2595. At this point we should now have displayed and saved a hollow, upward
  2596. pointing triangle. We could continue to define new characters, but lets stop;
  2597. this is enough for a demonstration.
  2598.  
  2599.   -   Press ESC to quit. When prompted for confirmation, press "Y".
  2600.  
  2601. Your font file has now been edited to define ASCII 127 as a hollow, upward
  2602. pointing triangle. Download it to your laser printer as usual, and whenever
  2603. you print a document using this font, all ASCII 127s will be displayed as a
  2604. hollow, upward pointing triangle, similar to this: D.
  2605.  
  2606.  
  2607.  
  2608. 8.2.  Registered Trademark Symbol
  2609.  
  2610. A registered trademark symbol is often represented by a small capital "R"
  2611. within a circle; however, this character is seldom included in a font. Use
  2612. FONTEDIT to make our own!
  2613.  
  2614. The discussion below will assume that ASCII 200 will become the new symbol,
  2615. and that ASCII 200 doesn't already exist in the font.
  2616.  
  2617.           FONTEDIT, (C) by Alexander Walter                      Page 48
  2618.  
  2619.  
  2620.  
  2621.  
  2622. At the Main Menu, press "R" to display a capital R. Then perform the
  2623. following steps:
  2624.  
  2625.   -   Press F5 to copy it to ASCII 200
  2626.   -   You are now in Pixel Edit mode for ASCII 200. Make sure you are not in
  2627.       Zoom mode. If you are in Zoom mode, unzoom by pressing ALT-Z.
  2628.   -   From the Pixel Edit menu, choose F2, Image Transforms
  2629.   -   From the Image Transforms menu, press Shift-F2 to Resize.
  2630.  
  2631. The blinking box now represents the outline of the character box after the
  2632. character is resized. Resize it to have about half its former width and
  2633. height. Once it has the proper size, click the mouse or press F10 to accept.
  2634. Then continue with the following steps:
  2635.  
  2636.   -   Press ESC to return to the Pixel Edit menu.
  2637.   -   Use Ctrl-Up, -Down, -Left, or -Right to center the character
  2638.       approximately in the middle of the cell box.
  2639.   -   Press F5 to choose Row/Col Ins/Del, then press F3 to expand the
  2640.       character by adding blank rows and columns around the edges. Press F10
  2641.       to return to the Pixel Edit Menu.
  2642.   -   Press F3 for Area Operations
  2643.   -   Press F5 for Ellipse & Wedge.
  2644.   -   Completely enclose the small capital "R" in a circle, and make sure the
  2645.       "R" is centered in the circle. Make sure there is still room on all
  2646.       sides between the circle and the character box. When the circle is OK,
  2647.       either click the mouse or press F10 to accept. Use the fill option to
  2648.       fill everything outside the circle.
  2649.   -   Draw a second circle with the same center as the first, but slightly
  2650.       larger so that it completely encloses the first. Again, make sure there
  2651.       is still room on all sides between the second circle and the character
  2652.       box. When the second circle is OK, use the clear option to clear
  2653.       everything outside the second circle.
  2654.   -   Press ESC to return to the Pixel Edit menu.
  2655.   -   Press F5 to choose Row/Col Ins/Del, then press F2 to trim the blank
  2656.       rows and columns from around the edges. Press F10 to return to the
  2657.       Pixel Edit Menu, and press F10 again to save the new character and
  2658.       return to the Main Menu.
  2659.  
  2660. You will now see the registered trademark symbol. Press ESC to return to the
  2661. Pixel Edit menu, then press F10 to accept the new character. It should look
  2662. something like this:  (R).
  2663.