................................................Oct 26 1986 AD+AF HP Soft Fonts: PRD file plus Utilities -------------------------------------------- by Denis DeLaRoca [72406,1717] Introduction: ------------- The following package contains a PRD file to utilize the newly released Hewlett Packard AD and AF sets of soft fonts under Microsoft Word 3.x. In addition, an updated font download program and some useful font utilities are included. Files on Disk: -------------- SOFTAD.TXT - This file SOFTAD.PRD - PRD File for AD+AF Soft Font set SOFTADHP.PRD - Same as above for HP-150 computers SOFTAD.EXE - Font Download Program for AD+AF set SOFTAD.CFG - Configuration data for Download Program WIDTHS.COM - Font Width Table Extract Utility USASCII.COM - Font Conversion Utility, Roman-8 to USASCII WIDTHS.PAS - Source code in Turbo Pascal USASCII.PAS - Source code in Turbo Pascal PRD File: SOFTAD.PRD ----------------------- The IBM MS Word 3.x PRD file included is for the Portrait version of the HP AD-AF Soft Font sets. These sets include both Times Roman and Helvetica fonts in sizes 6, 7, 8, 9, 10, 11, 12, 14, 18, 18, 24 and 30. Each size is provided in regular, italic and bold face versions. The supplied PRD file assumes certain default values, if you need to change those values make use of the Microsoft supplied utility MAKEPRD. The default values of interest as they appear on the PRD file are: SerialInterface: 0 tells Word that your printer is connected via a parallel interface. WidthTSwap: 1 tells Word to load one Character Width Table at a time. Since the PRD file contains 66 width tables, this setting is recommended. DownloadFlag: 1 tells Word that your PRD file contains downloadable fonts to be managed with the Font Download program HPDWNSFP.EXE. Character Sets Supported: Roman-8 and USASCII Two PRD files are actually supplied, SOFTAD.PRD is the IBM version, while SOFTADHP.PRD is the HP-150 version. Download Program: SOFTAD.EXE ------------------------------ To allow Word to manage font downloads automatically a suitable font download program SOFTAD.EXE is supplied. For a detailed explanation of how Word manages soft fonts consult the Printer Information Manual provided by Microsoft with version 3.x of Word. Briefly, a PRD file for soft fonts may specify a printer initialize file INI and a font download program EXE. Each PRD file may then have corresponding INI and EXE files. SOFTAD.PRD merely needs a font downloader SOFTAD.EXE. For release v3.0 of Word, the Microsoft supplied font download program has its configuration data hard coded within the program. The replacement font download program supplied here is instead driven by a configuration file SOFTAD.CFG. This is a plain ASCII file whose contents, for the supplied PRD file, is as follows: d:\hpfonts Font File Directory []()0?pn.<>p Font File Name Mask yes Erase Previous Font Download yes Mark Downloaded Fonts Permanent 8,hv,r8,ribi Helvetica Font - Roman-8 set 9,hv,us,ribi Helvetica Font - USASCII set 24,tr,r8,ribi Times Roman Font - Roman-8 set 25,tr,us,ribi Times Roman Font - USASCII set the first line specifies the file directory where your soft fonts may be found. The second line specifies a mask used by the download program to build Font File names. The wild chaaracters are as follows: [] - font name, HV for Helvetica, TR for Times Roman and so on. The actual codes are those used by HP to name their font files. () - font size in points <> - font character set, US for USASCII or R8 for Roman-8. ? - font style, a single character style code, follo- wing HP conventions R for regular, I for italic, B for bold and T for bold-italic. Lines 3 and 4 of the CFG file tell the download program whether to erase any previous downloaded fonts and whether to mark the fonts to be downloaded as permanent. Downloaded fonts marked as permanent survive the Printer Reset sequence issued by Word at the end of each print job. The erase sequence is, however, able to delete these fonts. Line 5, and succesive lines, describe the font families supported by a particular PRD file. The syntax of a font descriptor is as follows: ,,, where is the number assigned to the font within the PRD file by means of the "F#" directive. is the 2 character label used to identify this particular font. specifies the 2 character label used to identify USASCII and Roman-8 fonts. Font ids range from 0 to 63, their mappings onto Font Names are given in the Word Printer Manual. These mappings as well as the Font's Character set, size and face style are all encoded within the file names chosen by HP to name their font files. For each font definition, the parameter string specifies from left to right the style codes associated with font styles regular, italic, bold and bold italic. These are the codes used to build Font File names. In the supplied CFG file, the parameter string "ribi" associates the codes "r", "i", "b" and "i" with font styles regular, italic, bold and bold italic. Since no real bold-italic font is available, its closest sibling, italic, is used in its place. For this mapping to work note that the supplied PRD files assume that all four distinct font styles are available for use. Which styles or faces actually get used, or remapped, may be controlled to some extent by the download program. The download program has been tested on an IBM PC-AT, it should work with any IBM compatible computer. It may, or may not, work on the HP-150. Save for a direct BIOS call to write to the printer, SOFTAD.EXE uses standard DOS services. It was written under MS "C" v4.0. Installation: ------------- Install all files on your MS Word 3.x directory. You may need to modify the PRD file to change some of the supplied defaults. After that you should be ready to go. Notice that the supplied PRD file supports both sets of USASCII and Roman-8 fonts, this assumes that you have the corresponding font files of both types. Roman-8 font files look as *.R8P, while their USASCII counterparts look as *.USP. If you don't need to work with extended characters use the USASCII fonts, they roughly about half as much memory on your LaserJet+ printer as Roman-8 fonts do. The current download program doesn't have the smarts to keep track of LaserJet+ memory usage. Specifically, it cannot detect the LaserJet+ status "20", out of memory. If such a thing occurs it is best to restart the print operation again selecting this time a lesser number of fonts to be downloaded. Maybe a future version of SOFTAD.EXE will be able to parse the downloaded fonts and figure out the amount of memory used and issue a warning message at the right time! CUSTOMIZATION: -------------- The supplied font download program, unlike its Microsoft counterpart, is general enough to be used with other PRD files using downloadable fonts. Simply, create a copy of SOFTAD.EXE with the name of your new PRD file and configure it with an appropiate CFG file. For example, if you have some other downloadable soft fonts PRD file by the name of SAMPLE.PRD, then the download program would be named SAMPLE.EXE and the configure file SAMPLE.CFG. As already mentioned, SOFTAD.PRD supports both Roman-8 and USASCII font sets. It does this at the price of a slight incompatability with the rest of the family of PRD files. Microsoft suggests the use of consistent font numbers across the range of PRD files, see Word's Printer Manual Chapter. The TmsRmn font is assigned the number "24", Helvetica is assigned font number "8". To support USASCII fonts within the same PRD file, SOFTAD.PRD arbitrarily assigns font number "25" for USASCII Times Roman, and font number "9" for USASCII Helvetica. When moving among PRD files, Word equates fonts by the numbers, font number 24 (roman i) in one PRD file matches whatever font has been assigned a number of 24 (roman i) in the other PRD file. If such a font does'nt exist on the other PRD file, then Word chooses the default printer font, Courier for the LaserJet+. Font Information Display Utility: WIDTHS.COM -------------------------------------------- Font descriptor and width table information may be displayed by means of the utility WIDTHS.COM. The program uses DOS re-direction for its input and output. Input must be a standard HP font file, output whatver you desire, examples: WIDTHS CON: WIDTHS LPT2: WIDTHS hv060bpn.doc Font descriptor information is diaplayed in symbolic form. Two width tables are produced, the first with characters ranging from 32 to 255. The second, as used by MS Word for the IBM PC family, with characters ranging from 32 to 175. The first table is suitable for use by HP micros, while the second width table is for use by IBM micros, it remaps printable characters in the range 128-255 from the first table into characters 128-175 as specified by the translate table T0 in the PRD file. Font Conversion Utility: USASCII -------------------------------- The utility USASCII.COM allows you to convert a Roman-Extended font to its USASCII version. You invoke USASCII in a similar fashion to WIDTHS. For example: USASCII hv060rpn.usp would convert font HV060RPN.R8P to its USASCII counterpart HV060RPN.USP. USASCII fonts use considerably less memory on your LaserJet+ and ought to be used when possible. Feedback: --------- Please report all problems and or suggestions for improvements to Denis DeLaRoca [72406,1717].