Annotation of mstools/samples/ntfonts/ntfonts.rtf, revision 1.1.1.1

1.1       root        1: {\rtf1\ansi \deff0\deflang1024{\fonttbl{\f0\froman Times New Roman;}{\f1\froman Symbol;}{\f2\fswiss Arial;}{\f3\froman Times;}{\f4\fswiss Helvetica;}{\f5\fmodern Courier;}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
                      2: \red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue127;\red0\green127\blue127;\red0\green127\blue0;\red127\green0\blue127;\red127\green0\blue0;
                      3: \red127\green127\blue0;\red127\green127\blue127;\red192\green192\blue192;}{\stylesheet{\s242\fi-1886\li360\sb60\keep\keepn\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340\tqc\tx4320\tqr\tx8640 \b\f5\fs20\up6 \sbasedon0\snext242 footer;}{
                      4: \s243\tqc\tx4320\tqr\tx8640 \f3\fs12\lang1033 \sbasedon0\snext243 header;}{\s244\fi-1886\li360\sb60\keep\keepn\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340\tqc\tx4320\tqr\tx8640 \b\f5\fs16\up6 \sbasedon0\snext0 footnote reference;}{
                      5: \s245\fi-1886\li360\sb60\keep\keepn\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340\tqc\tx4320\tqr\tx8640 \b\f5\fs20\up6 \sbasedon0\snext245 footnote text;}{\s246\li720 \i\f3\fs20\lang1033 \sbasedon0\snext255 heading 9;}{\s247\li720 \i\f3\fs20 
                      6: \sbasedon0\snext255 heading 8;}{\s248\li720 \i\f3\fs20\lang1033 \sbasedon0\snext255 heading 7;}{\s249\li720 \f3\fs20\ul\lang1033 \sbasedon0\snext255 heading 6;}{\s250\li720 \b\f3\fs20\lang1033 \sbasedon0\snext255 heading 5;}{\s251\li360 \f3\ul\lang10 
                      7: \sbasedon0\snext255 heading 4;}{\s252\li360 \b\f3\lang1033 \sbasedon0\snext255 heading 3;}{\s253\sb120 \b\f4\lang1033 \sbasedon0\snext0 heading 2;}{\s254\sb240 \b\f4\ul\lang1033 \sbasedon0\snext0 heading 1;}{\s255\li720 \f3\fs12\lang1033 
                      8: \sbasedon0\snext255 Normal Indent;}{\f3\fs12\lang1033 \snext0 Normal;}{\s2 \b\f4\fs28\lang1033 \sbasedon0\snext2 Title;}{\s3\li720 \b\f4\fs28\lang1033 \sbasedon0\snext3 Body;}{\s4\li270\sb60\tx1440\tx2340 \b\f4\fs28\lang1033 \sbasedon0\snext4 List;}{
                      9: \s5\li270\sb60\tx1440\tx2340 \b\f4\fs20\lang1033 \sbasedon3\snext5 JumpBody;}{\s6\li270\sb60\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340 \b\f4\fs28\lang1033 \sbasedon0\snext6 PopUpTitle;}{\s7\li180\sb60\keep\brdrb\brdrs\brdrw30\brsp20\brdrcf2 
                     10: \tx1440\tx2340 \b\f4\fs20\lang1033 \sbasedon5\snext7 PopUpBody;}{\s8\fi-1886\li2160\sb60\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340 \b\f4\fs20\lang1033 \sbasedon4\snext8 GlossaryEntry;}{\s9\fi-1886\li360\sb60\keep\brdrb
                     11: \brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340 \b\f5\fs8 \snext0 FixedText;}{\s10\fi-1886\li360\sb60\keep\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx1440\tx2340 \b\f5\fs20\up6 \snext0 ControlCodes;}}{\info{\author Steve Firebaugh}{\operator Steve Firebaugh}
                     12: {\creatim\yr1992\mo10\dy9\hr15\min50}{\revtim\yr1992\mo10\dy9\hr15\min50}{\version2}{\edmins17}{\nofpages0}{\nofwords65536}{\nofchars65536}{\vern16431}}\paperw12240\paperh15840\margl1800\margr1800\margt1440\margb1440\gutter0 \sectd \linex0 \pard\plain \s6
                     13: \brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f4\fs28\lang1033 #}{\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 
                     14: NTFonts Online Help Contents}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain \b\f3 NTFonts Online Help Contents}}}{\plain \b\f4\fs28 NTFonts Online Help Contents}{\plain \b\f4\fs28\up6 
                     15: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\ul\lang1033 
                     16: \par }{\plain \f3\ul\lang1033 QuickStart:}{\plain \f3\lang1033 
                     17: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 1.  Push the "EnumFonts" button.}{\plain \f3\lang1033 
                     18: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 2.  Mouse click on one of the fonts displayed.}{\plain \f3\lang1033 
                     19: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 3.  Modify the values in the LOGFONT dialog.}{\plain \f3\lang1033 
                     20: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 4.  Push the "CreateFont" button.}{\plain \f3\lang1033 
                     21: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 5.  Observe the results in the "Display" window.}{\plain \f3\lang1033 
                     22: \par }{\plain \f3\lang1033 
                     23: \par }{\plain \f3\ul\lang1033 More Information:}{\plain \f3\ul\lang1033 
                     24: \par }{\plain \f3\lang1033 
                     25: \par }{\plain \f3\uldb\lang1033 Overview}{\plain \v\f3\lang1033 Overview}{\plain \f3\lang1033 \tab \tab \tab \tab }{\plain \f3\uldb\lang1033 Advanced Features}{\plain \v\f3 Advanced}{\plain \f3\lang1033 
                     26: \par }{\plain \f3\uldb\lang1033 Printing}{\plain \v\f3\lang1033 Printing}{\plain \f3\lang1033 \tab \tab \tab \tab }{\plain \f3\lang1033 \tab }{\plain \f3\uldb\lang1033 True Type Information}{\plain \v\f3\lang1033 TrueType}{\plain \f3\lang1033 
                     27: \par }{\plain \f3\uldb\lang1033 Display Window}{\plain \v\f3\lang1033 Display}{\plain \f3\lang1033 \tab \tab \tab }{\plain \f3\uldb\lang1033 EnumFonts Window}{\plain \v\f3\lang1033 Enum}{\plain \f3\lang1033 
                     28: \par }{\plain \f3\uldb\lang1033 References}{\plain \v\f3\lang1033 References}{\plain \f3\lang1033 
                     29: \par }{\plain \f3\lang1033 
                     30: \par }{\plain \f3\ul\lang1033 Known problems}{\plain \f3\ul\lang1033 :}{\plain \f3\ul\lang1033 
                     31: \par }{\plain \f3\lang1033 
                     32: \par }{\plain \f3\lang1033 As of the October release, there were two recognized problems with this program.  }{\plain \f3\lang1033 One, }{\plain \f3\lang1033 a}{\plain \f3\lang1033 ccessing the last four fields of the OUTLINETEXTMETRIC structure was commente}
                     33: {\plain \f3\lang1033 d out in the files display.c & }{\plain \f3\lang1033 dialogs.c.  Two, the device}{\plain \f3\lang1033  bit is on for mos}{\plain \f3\lang1033 t of the True}{\plain \f3\lang1033 Type fonts}{\plain \f3\lang1033 
                     34: , as returned by EnumFonts().  A}{\plain \f3\lang1033 s a result, the TrueType font}{\plain \f3\lang1033 s are not shown in their own font face, and}{\plain \f3\lang1033  they are marked with the small bitmap of a printer.}{\plain \f3\lang1033 
                     35: \par }\pard\plain \s6\sb60\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 \page #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 # Overview}}${\footnote \pard\plain 
                     36: \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ Overview}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K Overview}}}Overview{\up6 
                     37: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 
                     38: The NTFonts program is designed to provide the user an easy interface to the API calls related to the font system.  It will not protect against meaningless values, nor will it hide system oddities.  Most of the buttons on the toolbar are self explanatory 
                     39: }{\plain \f3\lang1033 and represent a single system API.}{\plain \f3\lang1033 
                     40: \par }{\plain \f3\lang1033 
                     41: \par }{\plain \f3\lang1033 Pressing the EnumFonts button will show all of the face names listed horizontally, and each of the fonts within that face name listed vertically below it, }{\plain \f3\lang1033 see}{\plain \f3\lang1033  }{\plain \f3\uldb\lang1033 
                     42: EnumFonts}{\plain \v\f3\lang1033 Enum}{\plain \f3\lang1033 .  TrueType fonts will be marked with a }{\plain \f3\lang1033 \{}{\plain \f3\lang1033 bmc b}{\plain \f3\lang1033 mtt.bmp}{\plain \f3\lang1033 \}}{\plain \f3\lang1033 
                     43:  bitmap.  Fonts that have the DEVICE_FONTTYPE bit on will be marked with a small bitmap image of a printer }{\plain \f3\lang1033 \{}{\plain \f3\lang1033 bmc bmdevice.bmp}{\plain \f3\lang1033 \}}{\plain \f3\lang1033 
                     44: .  When the enumeration windows are showing the user can click the left mouse button to copy the information about a selected font into the LOGFONT and TEXTMETRIC dialogs.  The user can dismiss this window without changing the dialog boxes by clicking wit
                     45: }{\plain \f3\lang1033 h the right mouse button or typing any character.}{\plain \f3\lang1033 
                     46: \par }{\plain \f3\lang1033 
                     47: \par }{\plain \f3\lang1033 The }{\plain \f3\uldb\lang1033 Display Window}{\plain \v\f3\lang1033 Display}{\plain \f3\lang1033  is able to operate in any one of three m}{\plain \f3\lang1033 
                     48: odes.  These are listed in the "Display" menu.  The first just writes "Hello" in the middle of the screen, and it grids the background.  This is useful when utilizing the lfEscapement and lfOrientation fields of the LOGFONT structure.  The second mode wri
                     49: }{\plain \f3\lang1033 
                     50: tes all of the glyphs between the tmFirstChar and tmLastChar values stored in the TEXTMETRIC structure.  The final mode is used only for true type fonts.  It calls GetFontData, finds the 'cmap' table, and displays glyphs from the different ranges in this 
                     51: }{\plain \f3\lang1033 ta}{\plain \f3\lang1033 ble.  Use the horizontal scroll bar in the display window to step through the ranges.}{\plain \f3\lang1033 
                     52: \par }{\plain \f3\lang1033 
                     53: \par }\pard\plain \s6\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 \page {\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 # Advanced}}}{\plain \f3  }
                     54: {\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ Advanced}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K Advanced}}}{\plain \b\f4\fs28 Advanced Features}{\plain 
                     55: \b\f4\fs28\up6 
                     56: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 
                     57: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Shows all of the fonts installed on the display in their own type face. (}{\plain \f3\lang1033 See}{\plain \f3\lang1033   }{\plain \f3\uldb\lang1033 EnumFonts}{\plain \v\f3\lang1033 Enum}{\plain 
                     58: \f3\lang1033 ).}{\plain \f3\lang1033 
                     59: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Lists the fonts available to the default printer.}{\plain \f3\lang1033 
                     60: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Provides user friendly, structured access to GetFontData().}{\plain \f3\lang1033 
                     61: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Reads the 'cmap' table and shows }{\plain \b\f3\lang1033 all }{\plain \f3\lang1033 of the glyphs in a true type font.  (}{\plain \f3\lang1033 See}{\plain \f3\lang1033   }{\plain \f3\uldb\lang1033 
                     62: Display Window}{\plain \v\f3\uldb\lang1033 Display}{\plain \f3\lang1033 ).}{\plain \f3\lang1033 
                     63: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Able to }{\plain \f3\lang1033 print to the default printer.  (}{\plain \f3\lang1033 See}{\plain \f3\lang1033   }{\plain \f3\uldb\lang1033 Printing}{\plain \v\f3\uldb\lang1033 Printing}{\plain \f3\lang1033 
                     64: ).}{\plain \f3\lang1033 
                     65: \par }{\plain \f3\lang1033 
                     66: \par }\pard\plain \s6\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \b\f4\lang1033 \page }{\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1 # }
                     67: {\plain \b\f3 Display}}}{\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 DisplayWindow}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain 
                     68: \b\f3 DisplayWindow}}}{\plain \b\f4\fs28 Display Window}{\plain \b\f4\fs28\up6 
                     69: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 The "Display" Window operates in one of three modes.  This may be controlled by using the "Display" menu.  The modes are:}{\plain 
                     70: \f3\lang1033 
                     71: \par }{\plain \f3\lang1033 
                     72: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 "Hello"}{\plain \f3\lang1033 \tab \tab \tab \tab }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 (single string written in the center)}{\plain \f3\lang1033 
                     73: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 tmFirstChar, tmLastChar}{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 (range from TEXTMETRIC structure)}{\plain \f3\lang1033 
                     74: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 All Glyphs}{\plain \f3\lang1033 \tab \tab \tab \tab }{\plain \f3\lang1033 (for true type fonts, show all glyphs from all ranges)}{\plain \f3\lang1033 
                     75: \par }{\plain \f3\lang1033 
                     76: \par }{\plain \f3\lang1033 For the later two modes, if there are more characters than will fit in the window, the vertical scroll bar may be used to scroll through them.}{\plain \f3\lang1033 
                     77: \par }{\plain \f3\lang1033 
                     78: \par }{\plain \f3\lang1033 
                     79: The third mode works by calling GetFontData(), finding the 'cmap' table, and then using the code point ranges from this table.  The horizontal scroll bar will appear when in this mode, and may be used to step through the different ranges.  The current cod
                     80: }{\plain \f3\lang1033 e point range that is being displayed is shown in the title bar of this window.}{\plain \f3\lang1033 
                     81: \par }{\plain \f3\lang1033 
                     82: \par }\pard\plain \s6\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 \page {\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 # }{\plain \b\f3 Enum}}}
                     83: {\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 EnumFonts Windo}{\plain \f3 w}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain \b\f3 
                     84: EnumFontsWindow}}}{\plain \b\f4\fs28 EnumFonts Window}{\plain \b\f4\fs28\up6 
                     85: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 
                     86: There are two "EnumFonts" windows.  One lists all of the fonts available to the display; the other lists all of the fonts available to the default printer.  Both windows show the results of calling the EnumFonts() API.  The typeface names are listed horiz
                     87: }{\plain \f3\lang1033 ontally.  The different variations for each type face are listed vertically.  TrueType fonts will be marked with a }{\plain \f3\lang1033 \{}{\plain \f3\lang1033 bmc bmtt.bmp}{\plain \f3\lang1033 \}}{\plain \f3\lang1033 
                     88:  bitmap.  Fonts that have the DEVICE_FONTTYPE bit on will be marked with a small bitm}{\plain \f3\lang1033 ap image of a printer }{\plain \f3\lang1033 \{}{\plain \f3\lang1033 bmc bmdevice.bmp}{\plain \f3\lang1033 \}}{\plain \f3\lang1033 .}{\plain 
                     89: \f3\lang1033 
                     90: \par }{\plain \f3\lang1033 
                     91: \par }{\plain \f3\lang1033 
                     92: These two windows are maximized as a result of selecting "EnumFonts" in the "Control" menu, or as a result of hitting the "EnumFonts" buttons on the toolbar.  When one the windows is maximized, clicking the left mouse button will cause the LOGFONT and TEX
                     93: }{\plain \f3\lang1033 TMETRIC information to be copied into their respective dialogs, and the EnumFonts window will be minimized.  Notice that this information is stored from the call to EnumFonts().  It is necessary to hit the "Creat}{\plain 
                     94: \f3\lang1033 eFont" button to see the resulting logical font in the display window.}{\plain \f3\lang1033 
                     95: \par }{\plain \f3\lang1033 
                     96: \par }\pard\plain \s6\sb60\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 \page {\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 # }{\plain \b\f3 
                     97: TrueType}}}{\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 TrueType}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain \b\f3 TrueType}}}
                     98: TrueType Information{\up6 
                     99: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 TrueType fonts are marked with a }{\plain \f3\lang1033 \{}{\plain \f3\lang1033 bmc bmtt.bmp}{\plain \f3\lang1033 \}}{\plain 
                    100: \f3\lang1033  bitmap in the }{\plain \f3\uldb\lang1033 EnumFonts}{\plain \v\f3\uldb Enum }{\plain \f3\lang1033 windows.}{\plain \f3\lang1033 
                    101: \par }{\plain \f3\lang1033 
                    102: \par }{\plain \f3\lang1033 Use "Display" menu to check "All Glyphs from FontData" in order to see all of the different ranges of codepoints in the }{\plain \f3\uldb\lang1033  Display Window}{\plain \v\f3\uldb\lang1033 Display}{\plain \f3\lang1033 
                    103: .  Notice that the list of codepoints co}{\plain \f3\lang1033 
                    104: vered is not well handled by the existing API since it will only specify contiguous ranges in the TEXTMETRIC structure.  In order to get this information, the program uses GetFontData() and the 'cmap' table.  The format of the 'cmap' table is documented i
                    105: }{\plain \f3\lang1033 n the TrueType font Specification, }{\plain \f3\lang1033 see}{\plain \f3\uldb\lang1033 References}{\plain \v\f3\lang1033 References}{\plain \f3\lang1033 .}{\plain \f3\lang1033 
                    106: \par }{\plain \f3\lang1033 
                    107: \par }\pard\plain \s6\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \b\f4\lang1033 \page }{\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1 # }
                    108: {\plain \b\f3 Printing}}}{\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 Printing}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain \b\f3 
                    109: Printing}}}{\plain \b\f4\fs28 Printing}{\plain \b\f4\fs28\up6 
                    110: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 
                    111: The "Control" menu contains an item labeled "Print."  Selecting this will send a job to the default printer, the same printer used for EnumFont}{\plain \f3\lang1033 
                    112: s (Printer).  First the program will print a small header.  If the font returns information with GetOutlineTextMetrics() then the otmpFullName field is written.  After that, the contents of this print job are dependent upon the mode of the }{\plain 
                    113: \f3\uldb\lang1033 Display Window}{\plain \v\f3\uldb\lang1033 Display}{\plain \f3\lang1033 
                    114: .  In the first two modes the output to the printer should be very similar to the contents of the display window.  In the "All Glyphs" mode, the output will print each code point range one after the other.  Each range is labeled and separated from the}
                    115: {\plain \f3\lang1033  previous range by a horizontal line.}{\plain \f3\lang1033 
                    116: \par }{\plain \f3\lang1033 
                    117: \par }{\plain \f3\lang1033 
                    118: NOTICE:  The logical font created in the print job results from the same LOGFONT parameters as were used to create the font in the display window.  Since the resolution of the printer is probably much greater, and since the size is in "pels," fonts will a
                    119: }{\plain \f3\lang1033 ppear much smaller on the printer.  There is no attempt at WYSIWYG output.  To make decent sized output on the printer, increase the lfHeight parameter so that the font in the display window looks quite large, then p}{\plain 
                    120: \f3\lang1033 rint.  For a 300dpi printer, setting lfHeight to 100 will print characters that are 1/3 inch high.}{\plain \f3\lang1033 
                    121: \par }\pard\plain \s6\sb60\brdrb\brdrs\brdrw30\brsp20\brdrcf2 \tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 \page {\plain \f4\fs28\lang1033 #{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 # }{\plain \b\f3 
                    122: References}}}{\plain \f4\fs28\lang1033 ${\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 $ }{\plain \b\f3 References/more information}}}{\plain \f4\fs28\lang1033 K{\footnote \pard\plain \f3\fs12\lang1033 {\plain \b\f3\lang1033 K }{\plain 
                    123: \b\f3 References/more information}}}References{\up6 
                    124: \par }\pard\plain \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 \b\f4\fs28\lang1033 {\plain \f3\lang1033 NTFonts was written by }{\plain \b\f3\lang1033 Steve Firebaugh}{\plain \f3\lang1033 
                    125:  in Microsoft's Developer Support.  Look for us in the }{\plain \b\f3\lang1033 MSWIN32}{\plain \f3\lang1033  forum of Compuserve.  Questions or bug reports related to this program should be posted to section 15/UNICODE/NLS.}{\plain \f3\lang1033 
                    126: \par }{\plain \f3\lang1033 
                    127: \par }{\plain \f3\lang1033 
                    128: \par }{\plain \f3\lang1033 Understanding the 'cmap' table is most easily possible with a specification for TrueType font }{\plain \f3\lang1033 files.  This is available from many sources including the following:}{\plain \f3\lang1033 
                    129: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Microsoft }{\plain \b\f3\lang1033 Software Library}{\plain \f3\lang1033 .  (Available on Compuserve by "GO MSL" then search for keyword }{\plain \b\f3\lang1033 TTSPEC1}{\plain \f3\lang1033 .)}{\plain 
                    130: \f3\lang1033 
                    131: \par }{\plain \f3\lang1033 \tab }{\plain \f3\lang1033 Anonymous ftp on }{\plain \b\f3\lang1033 ftp.uu.net}{\plain \f3\lang1033  in }{\plain \b\f3\lang1033 vendor/microsoft/TrueType-Info.}{\plain \b\f3\lang1033 
                    132: \par }{\plain \f3\lang1033 
                    133: \par }{\plain \f3\lang1033 
                    134: \par }{\plain \f3\lang1033 To learn all about unicode, including the "names" given to the different code point ranges, the best }{\plain \f3\lang1033 reference is the following two volume book available from Addison-Wesley:}{\plain \f3\lang1033 
                    135: \par }{\plain \b\f3\lang1033 \tab }{\plain \b\f3\lang1033 The Unicode Standard}{\plain \b\f3\lang1033 
                    136: \par }{\plain \b\f3\lang1033 \tab }{\plain \b\f3\lang1033 World-wide character encoding}{\plain \b\f3\lang1033 
                    137: \par }{\plain \b\f3\lang1033 \tab }{\plain \b\f3\lang1033 Version 1.0}{\plain \b\f3\lang1033 
                    138: \par }\pard \s4\sb60\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760 {\plain \b\f3\lang1033 \tab }{\plain \b\f3\lang1033 ISBN 0-201-56788-}{\plain \b\f3\lang1033 1}{\plain \f3\lang1033 
                    139: \par }\pard \s4\sb60\tx720\tx1440\tx2160\tx2340\tx2880\tx3600\tx4320\tx5040\tx5760 {\plain \b\f4\lang1033 \page }{\plain \b\f3\lang1033 
                    140: \par }}

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.