home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 4 / Apprentice-Release4.iso / Utilities / Text / OzTeX 1.9 / oztex / TeX-docs / fontsample.tex < prev    next >
Encoding:
Text File  |  1995-02-23  |  11.5 KB  |  254 lines  |  [TEXT/MPS ]

  1. % This file produces font samples; see bottom.
  2.  
  3. \magnification=1200
  4. \hoffset=-0.5in
  5. \voffset=-0.5in
  6.  
  7. \nopagenumbers
  8. \parindent=0pt
  9. \hsize=6.3in
  10. \vsize=9.7in
  11.  
  12. \def\init{\font\testfont=\fontname
  13.   \leftline{\tt\fontname}
  14.   \bigskip\bigskip
  15.   \testfont}
  16.  
  17. \newcount\m \newcount\n \newcount\p \newdimen\dim
  18. \def\oct#1{\hbox{\rm\'{}\kern-.2em\it#1\/\kern.05em}} % octal constant
  19. \def\hex#1{\hbox{\rm\H{}\tt#1}} % hexadecimal constant
  20. \def\setdigs#1"#2{\gdef\h{#2}% \h=hex prefix; \0\1=corresponding octal
  21.   \m=\n \divide\m by 64 \xdef\0{\the\m}%
  22.   \multiply\m by-64 \advance\m by\n \divide\m by 8 \xdef\1{\the\m}}
  23. \def\testrow{\setbox0=\hbox{\penalty 1\def\\{\char"\h}%
  24.   \\0\\1\\2\\3\\4\\5\\6\\7\\8\\9\\A\\B\\C\\D\\E\\F%
  25.   \global\p=\lastpenalty}} % \p=1 if none of the characters exist
  26. \def\oddline{\cr
  27.   \noalign{\nointerlineskip}
  28.   \multispan{19}\hrulefill&
  29.   \setbox0=\hbox{\lower 2.3pt\hbox{\hex{\h x}}}\smash{\box0}\cr
  30.   \noalign{\nointerlineskip}}
  31. \newif\ifskipping
  32.  
  33. \def\halfevenline{\loop\skippingfalse
  34.   \ifnum\n<128 \m=\n \divide\m 16 \chardef\next=\m
  35.   \expandafter\setdigs\meaning\next \testrow
  36.   \ifnum\p=1
  37.   \skippingfalse   % if \skippingtrue then empty rows are removed
  38.   \fi\fi
  39.   \ifskipping \global\advance\n 16 \repeat
  40.   \ifnum\n=128 \let\next=\endchart\else\let\next=\halfmorechart\fi
  41.   \next}
  42. \def\halfmorechart{\cr\noalign{\hrule\penalty5000}
  43.   \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
  44.   \chartline \halfevenline}
  45.  
  46. \def\evenline{\loop\skippingfalse
  47.   \ifnum\n<256 \m=\n \divide\m 16 \chardef\next=\m
  48.   \expandafter\setdigs\meaning\next \testrow
  49.   \ifnum\p=1
  50.   \skippingfalse   % if \skippingtrue then empty rows are removed
  51.   \fi\fi
  52.   \ifskipping \global\advance\n 16 \repeat
  53.   \ifnum\n=256 \let\next=\endchart\else\let\next=\morechart\fi
  54.   \next}
  55.  
  56. \def\morechart{\cr\noalign{\hrule\penalty5000}
  57.   \chartline \oddline \m=\1 \advance\m 1 \xdef\1{\the\m}
  58.   \chartline \evenline}
  59. \def\chartline{&\oct{\0\1x}&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&\:&&}
  60. \def\chartstrut{\lower4.5pt\vbox to 14pt{}}
  61.  
  62. \def\halftable{$$\global\n=0
  63.   \halign to\hsize\bgroup
  64.   \chartstrut##\tabskip0pt plus10pt&
  65.   &\hfil##\hfil&\vrule##\cr
  66.   \lower6.5pt\null
  67.   &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\halfevenline}
  68.  
  69. \def\table{$$\global\n=0
  70.   \halign to\hsize\bgroup
  71.   \chartstrut##\tabskip0pt plus10pt&
  72.   &\hfil##\hfil&\vrule##\cr
  73.   \lower6.5pt\null
  74.   &&&\oct0&&\oct1&&\oct2&&\oct3&&\oct4&&\oct5&&\oct6&&\oct7&\evenline}
  75.  
  76. \def\endchart{\cr\noalign{\hrule}
  77.   \raise11.5pt\null&&&\hex 8&&\hex 9&&\hex A&&\hex B&
  78.   &\hex C&&\hex D&&\hex E&&\hex F&\cr\egroup$$\par\vfil\eject}
  79.  
  80. \def\:{\setbox0=\hbox{\char\n}%
  81.   \ifdim\ht0>7.5pt\reposition
  82.   \else\ifdim\dp0>2.5pt\reposition\fi\fi
  83.   \box0\global\advance\n 1 }
  84. \def\reposition{\setbox0=\vbox{\kern2pt\box0}\dim=\dp0
  85.   \advance\dim 2pt \dp0=\dim}
  86. \def\centerlargechars{
  87.   \def\reposition{\setbox0=\hbox{$\vcenter{\kern2pt\box0\kern2pt}$}}}
  88.  
  89. \def\text#1{{\baselineskip=#1\rightskip=0pt plus5em
  90. ``the quick brown fox jumps over a lazy dog''\par
  91. ``THE QUICK BROWN FOX JUMPS OVER A LAZY DOG''\par
  92. ligatures: fluffy, waffle, firefly, difficult, en--dash, em---dash\par
  93. kerning: boxer, cooked, vowel\par
  94. `foreign' letters:\par
  95. \'o \`o \^o \"o \~o \=o \u o \v o \H o \.o \c o \d o \b o
  96. \oe\ \OE\ \ae\ \AE\ \aa\ \AA\ \o\ \O\ \l\ \L\ \ss\ \i\ \j\par
  97. }\bigskip\bigskip}
  98.  
  99. % \def\fontname{cmb10}     \init\text{12pt}\halftable
  100. % \def\fontname{cmbsy10}   \init\halftable              % no \text
  101. % \def\fontname{cmbx10}    \init\text{12pt}\halftable
  102. % \def\fontname{cmbx12}    \init\text{12pt}\halftable
  103. % \def\fontname{cmbx5}     \init\text{7pt}\halftable
  104. % \def\fontname{cmbx6}     \init\text{8pt}\halftable
  105. % \def\fontname{cmbx7}     \init\text{9pt}\halftable
  106. % \def\fontname{cmbx8}     \init\text{10pt}\halftable
  107. % \def\fontname{cmbx9}     \init\text{11pt}\halftable
  108. % \def\fontname{cmbxsl10}  \init\text{12pt}\halftable
  109. % \def\fontname{cmbxti10}  \init\text{12pt}\halftable
  110. % \def\fontname{cmcsc10}   \init\text{12pt}\halftable
  111. % \def\fontname{cmdunh10}  \init\text{12pt}\halftable
  112. % \def\fontname{cmex10}    \init\halftable              % no \text
  113. % \def\fontname{cmff10}    \init\text{12pt}\halftable
  114. % \def\fontname{cmfi10}    \init\text{12pt}\halftable
  115. % \def\fontname{cmfib8}    \init\text{10pt}\halftable
  116. % \def\fontname{cminch}    \init\halftable              % no \text
  117. % \def\fontname{cmitt10}   \init\text{12pt}\halftable
  118. % \def\fontname{cmmi10}    \init\halftable              % no \text
  119. % \def\fontname{cmmi12}    \init\halftable              % no \text
  120. % \def\fontname{cmmi5}     \init\halftable              % no \text
  121. % \def\fontname{cmmi6}     \init\halftable              % no \text
  122. % \def\fontname{cmmi7}     \init\halftable              % no \text
  123. % \def\fontname{cmmi8}     \init\halftable              % no \text
  124. % \def\fontname{cmmi9}     \init\halftable              % no \text
  125. % \def\fontname{cmmib10}   \init\halftable              % no \text
  126. \def\fontname{cmr10}     \init\text{12pt}\halftable
  127. % \def\fontname{cmr12}     \init\text{12pt}\halftable
  128. % \def\fontname{cmr17}     \init\text{19pt}\halftable
  129. % \def\fontname{cmr5}      \init\text{7pt}\halftable
  130. % \def\fontname{cmr6}      \init\text{8pt}\halftable
  131. % \def\fontname{cmr7}      \init\text{9pt}\halftable
  132. % \def\fontname{cmr8}      \init\text{10pt}\halftable
  133. % \def\fontname{cmr9}      \init\text{11pt}\halftable
  134. % \def\fontname{cmsl10}    \init\text{12pt}\halftable
  135. % \def\fontname{cmsl12}    \init\text{12pt}\halftable
  136. % \def\fontname{cmsl8}     \init\text{10pt}\halftable
  137. % \def\fontname{cmsl9}     \init\text{11pt}\halftable
  138. % \def\fontname{cmsltt10}  \init\text{12pt}\halftable
  139. % \def\fontname{cmss10}    \init\text{12pt}\halftable
  140. % \def\fontname{cmss12}    \init\text{12pt}\halftable
  141. % \def\fontname{cmss17}    \init\text{19pt}\halftable
  142. % \def\fontname{cmss8}     \init\text{10pt}\halftable
  143. % \def\fontname{cmss9}     \init\text{11pt}\halftable
  144. % \def\fontname{cmssbx10}  \init\text{12pt}\halftable
  145. % \def\fontname{cmssdc10}  \init\text{12pt}\halftable
  146. % \def\fontname{cmssi10}   \init\text{12pt}\halftable
  147. % \def\fontname{cmssi12}   \init\text{12pt}\halftable
  148. % \def\fontname{cmssi17}   \init\text{19pt}\halftable
  149. % \def\fontname{cmssi8}    \init\text{10pt}\halftable
  150. % \def\fontname{cmssi9}    \init\text{11pt}\halftable
  151. % \def\fontname{cmssq8}    \init\text{10pt}\halftable
  152. % \def\fontname{cmssqi8}   \init\text{10pt}\halftable
  153. % \def\fontname{cmsy10}    \init\halftable              % no \text
  154. % \def\fontname{cmsy5}     \init\halftable              % no \text
  155. % \def\fontname{cmsy6}     \init\halftable              % no \text
  156. % \def\fontname{cmsy7}     \init\halftable              % no \text
  157. % \def\fontname{cmsy8}     \init\halftable              % no \text
  158. % \def\fontname{cmsy9}     \init\halftable              % no \text
  159. % \def\fontname{cmtcsc10}  \init\text{12pt}\halftable
  160. % \def\fontname{cmtex10}   \init\text{12pt}\halftable
  161. % \def\fontname{cmtex8}    \init\text{10pt}\halftable
  162. % \def\fontname{cmtex9}    \init\text{11pt}\halftable
  163. % \def\fontname{cmti10}    \init\text{12pt}\halftable
  164. % \def\fontname{cmti12}    \init\text{12pt}\halftable
  165. % \def\fontname{cmti7}     \init\text{9pt}\halftable
  166. % \def\fontname{cmti8}     \init\text{10pt}\halftable
  167. % \def\fontname{cmti9}     \init\text{11pt}\halftable
  168. % \def\fontname{cmtt10}    \init\text{12pt}\halftable
  169. % \def\fontname{cmtt12}    \init\text{12pt}\halftable
  170. % \def\fontname{cmtt8}     \init\text{10pt}\halftable
  171. % \def\fontname{cmtt9}     \init\text{11pt}\halftable
  172. % \def\fontname{cmu10}     \init\text{12pt}\halftable
  173. % \def\fontname{cmvtt10}   \init\text{12pt}\halftable
  174. % \def\fontname{circle10}  \init\halftable              % no \text
  175. % \def\fontname{circlew10} \init\halftable              % no \text
  176. % \def\fontname{lasy10}    \init\halftable              % no \text
  177. % \def\fontname{lasy5}     \init\halftable              % no \text
  178. % \def\fontname{lasy6}     \init\halftable              % no \text
  179. % \def\fontname{lasy7}     \init\halftable              % no \text
  180. % \def\fontname{lasy8}     \init\halftable              % no \text
  181. % \def\fontname{lasy9}     \init\halftable              % no \text
  182. % \def\fontname{lasyb10}   \init\halftable              % no \text
  183. % \def\fontname{line10}    \init\halftable              % no \text
  184. % \def\fontname{linew10}   \init\halftable              % no \text
  185. % \def\fontname{logo10}    \init\halftable              % no \text
  186. % \def\fontname{logo8}     \init\halftable              % no \text
  187. % \def\fontname{logo9}     \init\halftable              % no \text
  188. % \def\fontname{logobf10}  \init\halftable              % no \text
  189. % \def\fontname{logosl10}  \init\halftable              % no \text
  190.  
  191. \input pstext    % defines \PStext
  192.  
  193. % Virtual PS fonts.
  194. % \PStext assumes T1 encoding, so we use "*q" font names:
  195.  
  196. % \def\fontname{pagdq}     \init{\PStext\text{12pt}}\table
  197. % \def\fontname{pagdoq}    \init{\PStext\text{12pt}}\table
  198. % \def\fontname{pagkq}     \init{\PStext\text{12pt}}\table
  199. % \def\fontname{pagkoq}    \init{\PStext\text{12pt}}\table
  200. % \def\fontname{pagkcq}    \init{\PStext\text{12pt}}\table
  201. % \def\fontname{pbkdq}     \init{\PStext\text{12pt}}\table
  202. % \def\fontname{pbkdiq}    \init{\PStext\text{12pt}}\table
  203. % \def\fontname{pbklq}     \init{\PStext\text{12pt}}\table
  204. % \def\fontname{pbkliq}    \init{\PStext\text{12pt}}\table
  205. % \def\fontname{pbklcq}    \init{\PStext\text{12pt}}\table
  206. % \def\fontname{pcrbq}     \init{\PStext\text{12pt}}\table
  207. % \def\fontname{pcrboq}    \init{\PStext\text{12pt}}\table
  208. % \def\fontname{pcrrq}     \init{\PStext\text{12pt}}\table
  209. % \def\fontname{pcrroq}    \init{\PStext\text{12pt}}\table
  210. % \def\fontname{pcrrcq}    \init{\PStext\text{12pt}}\table
  211. % \def\fontname{phvbq}     \init{\PStext\text{12pt}}\table
  212. % \def\fontname{phvboq}    \init{\PStext\text{12pt}}\table
  213. % \def\fontname{phvrq}     \init{\PStext\text{12pt}}\table
  214. % \def\fontname{phvroq}    \init{\PStext\text{12pt}}\table
  215. % \def\fontname{phvrcq}    \init{\PStext\text{12pt}}\table
  216. % \def\fontname{pncbq}     \init{\PStext\text{12pt}}\table
  217. % \def\fontname{pncbiq}    \init{\PStext\text{12pt}}\table
  218. % \def\fontname{pncrq}     \init{\PStext\text{12pt}}\table
  219. % \def\fontname{pncriq}    \init{\PStext\text{12pt}}\table
  220. % \def\fontname{pncrcq}    \init{\PStext\text{12pt}}\table
  221. % \def\fontname{pplbq}     \init{\PStext\text{12pt}}\table
  222. % \def\fontname{pplbiq}    \init{\PStext\text{12pt}}\table
  223. % \def\fontname{pplrq}     \init{\PStext\text{12pt}}\table
  224. % \def\fontname{pplriq}    \init{\PStext\text{12pt}}\table
  225. % \def\fontname{pplrcq}    \init{\PStext\text{12pt}}\table
  226. % \def\fontname{ptmbq}     \init{\PStext\text{12pt}}\table
  227. % \def\fontname{ptmbiq}    \init{\PStext\text{12pt}}\table
  228. % \def\fontname{ptmr0}     \init\table        % see raw encoding
  229. % \def\fontname{ptmr}      \init\halftable    % see OT1 encoding
  230. % \def\fontname{ptmrq}     \init{\PStext\text{12pt}}\table
  231. % \def\fontname{ptmriq}    \init{\PStext\text{12pt}}\table
  232. % \def\fontname{ptmrcq}    \init{\PStext\text{12pt}}\table
  233. % \def\fontname{pzcmiq}    \init{\PStext\text{12pt}}\table
  234. % \def\fontname{pzdr}      \init\table
  235. % \def\fontname{psyr}      \init\table
  236. % \def\fontname{psyro}     \init\table
  237.  
  238. % Slanted PostScript fonts:
  239.  
  240. % \def\fontname{ptmro0}    \init\table        % see raw encoding
  241. % \def\fontname{ptmro}     \init\halftable    % see OT1 encoding
  242. % \def\fontname{ptmroq}    \init{\PStext\text{12pt}}\table
  243. % \def\fontname{ptmboq}    \init{\PStext\text{12pt}}\table
  244.  
  245. % Utopia fonts require PFA files to be downloaded:
  246.  
  247. % \def\fontname{putrq}     \init{\PStext\text{12pt}}\table
  248. % \def\fontname{putriq}    \init{\PStext\text{12pt}}\table
  249. % \def\fontname{putrcq}    \init{\PStext\text{12pt}}\table
  250. % \def\fontname{putbq}     \init{\PStext\text{12pt}}\table
  251. % \def\fontname{putbiq}    \init{\PStext\text{12pt}}\table
  252.  
  253. \end
  254.