home *** CD-ROM | disk | FTP | other *** search
/ Play and Learn 2 / 19941.ZIP / 19941 / FONTS / ZIPFILES / JEMTEX2.ZIP / JGUIDE.TEX < prev    next >
Encoding:
Text File  |  1991-04-14  |  171.3 KB  |  3,661 lines

  1. %
  2. % Process this file twice with big LaTeX. Does not rely on any japanese font.
  3. %
  4. \typeout{}
  5. \typeout{Japanese [La]TeX for DOS User's Guide Version 2.00 <14 April 1991>}
  6. \typeout{Note: Run big LaTeX two times to resolve cross-references.}
  7. \typeout{Warning: This guide requires approximately 120Kb of memory to process.}
  8. \typeout{}
  9.  
  10. \hyphenation{jap-a-nese}
  11.  
  12. \def\LLaTeX{{\rm \raise.2ex\hbox{[}\kern-.05em L\kern-.38em\raise.35ex%
  13. \hbox{\lowercase{a}}\kern-.05em\raise.2ex\hbox{]}\kern-.1em T%
  14. \kern-.1667em\lower.7ex\hbox{E}\kern-.125em X}}
  15. \def\MuTeX{{\rm M\kern-.15em\raise.2ex\hbox{\lowercase{u}}\kern-.32em T%
  16. \kern-.1667em\lower.5ex\hbox{E}\kern-.125em X}}
  17. \def\emTeX{{\rm {\it{em}}\kern-.15em T%
  18. \kern-.1667em\lower.5ex\hbox{E}\kern-.125em X}}
  19. \def\JemTeX{{\rm J\kern-.2em {\it{em}}\kern-.15em T%
  20. \kern-.1667em\lower.5ex\hbox{E}\kern-.125em X}}
  21. \def\MFT{{\small\rm METAFONT}}
  22.  
  23. \documentstyle[12pt]{article}
  24. \pagestyle{plain}
  25. \begin{document}
  26.  
  27. \title{Japanese \LLaTeX\ for DOS \\
  28.           - User's Guide - \\
  29.    {\small (Version 2.00)}}
  30. \author{Fran\c cois Jalbert}
  31. \date{14 April 1991}
  32. \maketitle
  33.  
  34. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  35.  
  36. \section{Introduction}
  37. \typeout{1 Introduction}
  38. \label{introduction}
  39.  
  40. Welcome to \JemTeX\ Version~2.00, a simple system to typeset japanese using any 
  41. standard version of \TeX\ running under DOS. All you need to create your own 
  42. japanese fonts using \MFT\ is included. A preprocessor is also supplied which 
  43. will turn the output of your favorite japanese text editor into a standard 
  44. \TeX\ document ready for processing. 
  45.  
  46. This guide is divided into four main sections:
  47. \begin{description}
  48.  \item[Introduction:] Preliminary remarks (page~\pageref{introduction}).
  49.  \item[Japanese Fonts:] The \JemTeX\ fonts (page~\pageref{japanesefonts}).
  50.  \item[The \LLaTeX\ Interface:] The \JemTeX\ preprocessor 
  51.                                 (page~\pageref{thelatexinterface}).
  52.  \item[JemTeX Quick Reference:] Items often referred to 
  53.                                 (page~\pageref{jemtexquickreference}).
  54. \end{description}
  55.  
  56. \subsection{Why \JemTeX}
  57. \label{whyjemtex}
  58.  
  59. Shortly after adopting japanese as my new hobby, I felt the need to compile my 
  60. own small dictionaries and to keep a computer record of all the letters I sent 
  61. to my friends in Japan. These japanese documents would, of course, be produced 
  62. on my DOS computer. I was also typesetting japanese music with \MuTeX, and I 
  63. really wanted to write the lyrics using japanese characters rather than the 
  64. roman ones I was currently constrained to use. 
  65.  
  66. Luckily I had \mbox{USENET} access, and in early 1990 I came across Mr.\ Mark 
  67. Edward's MOKE~(1.1+) japanese text editor. It supported the most popular 
  68. graphics displays, it had all the japanese characters a novice like me would 
  69. ever need, it had extensive indexes to find the correct kanjis for any given 
  70. word, and it even supported my \mbox{EPSON} printer. I FTP'ed a copy for 
  71. myself and arranged to have it made available in T\=oky\=o at utsun 
  72. (133.11.11.11) for FTP as well. 
  73.  
  74. Unfortunately, MOKE's quality of output left much to be desired on my 
  75. \mbox{9-pin} printer, and MOKE did not have the fancy capabilities of \LaTeX. I 
  76. decided to look into public domain japanese versions of \LaTeX\ for DOS 
  77. computers. A query on \mbox{USENET} news triggered a long series of 
  78. \mbox{e-mail} exchanges. In a nutshell, the news was bad. 
  79.  
  80. First, I could not locate any \MFT\ code to generate the 240~DPI by 216~DPI 
  81. fonts needed by my previewing and printing devices. It was out of the question 
  82. for me to even think about writing my own \MFT\ code for the thousands of 
  83. characters involved in japanese. I did find some 300~DPI public domain fonts, 
  84. but they were useless to me. I was told many japanese printers have built-in 
  85. fonts, which could explain the lack of public domain external ones. 
  86.  
  87. There was also a serious possibility that loading many fonts might cause any 
  88. small implementation of \TeX\ to run out of memory. This was a problem 
  89. especially for DOS machines limited for historical reasons to 640~Kb of main 
  90. memory. I needed a \TeX\ with some sort of memory paging system for my big 
  91. RAM~disk. This problem was solved with Mr.\ Eberhard Mattes' \emTeX\ for DOS. 
  92. Its capacity seemed limited solely by \TeX's internal design. 
  93.  
  94. I could not find any macros to enter japanese using standard \LaTeX. I did 
  95. come across J\TeX\ and \mbox{ASCII-j\TeX}. However, both required that I build 
  96. my own \TeX\ source in C, using exotic tools like WEB and \mbox{TANGLE}. Even 
  97. if I ever managed eventually to get some usable C~code, it would not compile 
  98. into something very useful because of the 640~Kb main memory limitation of DOS. 
  99. It would be necessary to modify the C~code by adding the paging system to it. I 
  100. knew nothing of \TeX's internal working. How could I decide correctly which 
  101. information should be paged and which should remain in memory at all time? I 
  102. decided that adapting J\TeX\ or \mbox{ASCII-j\TeX}\ to DOS appeared too 
  103. uncertain and time-consuming. 
  104.  
  105. My situation could be summarized as follows. I had a simple japanese text 
  106. editor I could use to enter both english and japanese, and I had a big 
  107. implementation of \TeX\ which would not crash if I remained reasonable. But I 
  108. lacked japanese fonts and macros to put it all together. The remainder of this 
  109. brief guide explains how I solved these two problems. 
  110.  
  111. I call my japanese system \JemTeX. Anybody with a japanese text editor and 
  112. \emTeX, or any equivalent implementation of \TeX\ and \MFT, can now produce 
  113. simple, but acceptable japanese documents with his DOS computer. Following the 
  114. release of the first two versions, people from all over the world expressed 
  115. their satisfaction. There is no doubt in my mind that there was a real need for 
  116. \JemTeX. 
  117.  
  118. \begin{quote}
  119.  \begin{em}
  120.   \JemTeX\ is free for all to use and modify. Please feel free to distribute 
  121.   unmodified copies of it. If you should use parts of\/ \JemTeX, or some of my 
  122.   ideas in your work, a reference to \JemTeX\ would be appreciated.
  123.  \end{em}
  124. \end{quote} 
  125.  
  126. \subsection{\JemTeX\ Files}
  127. \label{jemtexfiles}
  128.  
  129. \JemTeX\ is distributed compressed with Version~1.1 of the \verb"PKZIP" 
  130. utility of PKWARE Inc. You should have received the following file:
  131. \begin{quote}%Don't put spaces after the next line!
  132. \begin{verbatim}
  133. JEMTEX2  ZIP   440435   4-14-91  12:00p
  134. \end{verbatim}
  135. \end{quote}
  136.  
  137. Unpacking should yield the following files:
  138. \begin{quote}%Don't put spaces after the next line!
  139. \begin{verbatim}
  140. JIS24          562032   4-14-91  12:00p
  141. JIS2MF   C      37598   4-14-91  12:00p
  142. JIS2MF   PAS    33242   4-14-91  12:00p
  143. JIS2MF   EXE    12181   4-14-91  12:00p
  144. JEM2TEX  C      47627   4-14-91  12:00p
  145. JEM2TEX  PAS    40635   4-14-91  12:00p
  146. JEM2TEX  EXE    14203   4-14-91  12:00p
  147. FONTABLE C       5814   4-14-91  12:00p
  148. FONTABLE PAS     4475   4-14-91  12:00p
  149. FONTABLE EXE     4905   4-14-91  12:00p
  150. JGUIDE   TEX   175442   4-14-91  12:00p
  151. \end{verbatim}
  152. \end{quote}
  153. All these files will be covered in time in this brief guide. 
  154.  
  155. I supply you with the fastest utilities possible at the moment, which are 
  156. sometime C versions, sometime Pascal versions. The programs compile fine with 
  157. recent DOS turbo compilers and UNIX gcc. Note that the executables are also 
  158. compressed with the \verb"LZEXE" utility of Mr.\ Fabrice Bellard. The 
  159. decompression automatically occurs at runtime. 
  160.  
  161. \subsection{Author's Address}
  162. \label{authorsaddress}
  163.  
  164. There is still a lot I do not understand about \LLaTeX\ and, especially, 
  165. japanese. I apologize in advance for my errors. If you have any comments, or 
  166. simply wish to be put on my mailing list, do not hesitate to contact the 
  167. author: 
  168.  
  169. \begin{quote}
  170. Fran\c cois Jalbert \\
  171. 220 Forest \\
  172. Ch\^ateauguay, QC \\
  173. CANADA \\
  174. J6J 1R1 \\
  175. \verb"jalbert@CS.UBC.CA" \\
  176. \verb"jalbert@IRO.UMontreal.CA"
  177. \end{quote}
  178.  
  179. \subsection{Acknowledgments}
  180. \label{acknowledgments}
  181.  
  182. I would like to take this opportunity to thank all the people who helped me in 
  183. this quest for knowledge, especially Mr.\ Takafumi Sakurai who is very familiar 
  184. with J\TeX. Finally, I must also thank all the users who helped to improve this 
  185. package with their comments. Keep them coming! In fact, Version~2.00 would not 
  186. have been possible without Mr.\ Masatoshi Watanabe, the author of JaWa\TeX. I 
  187. am greatly grateful to him for his contribution to my \verb"JIS2MF" program. 
  188.  
  189. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  190.  
  191. \section{Japanese Fonts}
  192. \typeout{2 Japanese Fonts}
  193. \label{japanesefonts}
  194.  
  195. In this section, I describe how I solved the font problem. I first introduce 
  196. the JIS~24 dot font which is the key behind the \JemTeX\ fonts. A discussion of 
  197. horizontal and vertical writing styles then becomes essential since writing 
  198. style influences the ideal characteristics of a font. I conclude the first part 
  199. of this section by explaining how to run my \verb"JIS2MF" \MFT\ code generation 
  200. program and \MFT\ itself. 
  201.  
  202. I include a few more technical details in the second part of this section. 
  203. Strictly speaking, this information is not mandatory and the reader in a hurry 
  204. will do well to simply skip it. But the inquiring one will have a chance to 
  205. take a closer look at the \MFT\ code generated and at the underlying algorithm. 
  206.  
  207. \subsection{The JIS~24 Dot Font}
  208. \label{thejis24dotfont}
  209.  
  210. The font problem is solved using the JIS~24 dot font of Mr.\ Yasuki Saito. It 
  211. is a series of 24~by~24 bitmaps organized sequentially. There is room for 
  212. 7806~bitmaps in the file \verb"JIS24", but several bitmaps are simply left 
  213. empty in the current version. 
  214.  
  215. \label{standard}
  216.  
  217. The JIS~'83 standard states which characters are defined in the JIS~24 dot font 
  218. and what position they occupy. However, several computer manufacturers have 
  219. taken the liberty of defining their own additional 24~by~24 bitmaps which they 
  220. place here and there at locations currently left empty by JIS~'83. The
  221. resulting {\em extended\/} JIS~24 dot fonts exist in many different 
  222. incompatible versions. 
  223.  
  224. \label{extended}
  225.  
  226. \JemTeX\ uses such an extended JIS~24 dot font. I do not know who is 
  227. responsible for its extension, but I certainly welcome the extra characters. 
  228. Besides a wealth of miscellaneous characters, a complete half-width roman and 
  229. japanese character set is available. You may choose to use them, or to restrict 
  230. yourself to standard JIS~'83 characters only. 
  231.  
  232. No doubt one can mechanize the creation of fonts from such bitmaps. There seems 
  233. to be two ways of handling the problem. First, one could generate fonts 
  234. directly from the bitmaps without using \MFT\ at all. Indeed, I know that 
  235. several fonts in J\TeX\ were created just that way. However, I suspect that it 
  236. might be difficult to scale fonts using non-integer factors. To further 
  237. complicate the scaling problem, my devices do not have the same horizontal and 
  238. vertical resolution. Besides, I feel that \MFT\ can deal with such scaling 
  239. issues better than I probably can in a mere few days of work. 
  240.  
  241. Consequently, I prefer to create \MFT\ code out of the bitmaps. A good example 
  242. of such an approach is the \verb"ega2mf" program of Mr.\ Thomas B.\ Ridgeway. 
  243. This program reads bitmaps and creates \MFT\ code where each character is a 
  244. small matrix of dots. The purpose of such fonts is to mimic the looks of 
  245. CRT~screens on paper. This is does so well that in fact, I find that the 
  246. japanese characters look too much like bitmaps! I want these dots to disappear 
  247. and a continuous outline to replace them. Nevertheless, \verb"ega2mf" clearly 
  248. demonstrates that the goal can be reached. 
  249.  
  250. I started from scratch, using a \MFT\ book and came up with my own \MFT\ code 
  251. generation program \verb"JIS2MF". It reads bitmaps from \verb"JIS24", and it 
  252. then constructs continuous characters, using squares, triangles, and quarter 
  253. circles. My program has been substantially improved by Mr.\ Masatoshi Watanabe. 
  254. A complete description is found in Subsections~\ref{themetafontcode} 
  255. and~\ref{algorithm}. 
  256.  
  257. \subsection{Writing Styles}
  258. \label{writingstyles}
  259.  
  260. It is clear from the lack of a vertical baseline in \MFT\ that \TeX\ was solely 
  261. designed for horizontal use. Indeed, \TeX\ can typeset japanese horizontally as 
  262. well as it does for english. This does not imply that vertical use of \TeX\ is 
  263. impossible, but it merely suggests that extra care will be required. In this 
  264. subsection, I would like to discuss and compare both writing styles. The 
  265. appropriate font properties can then be determined. 
  266.  
  267. \label{widthheight}
  268.  
  269. The first features of interest in this subsection are character width, 
  270. character height, and distance from the baseline. Consider first a few roman 
  271. characters and their horizontal baseline: 
  272. \begin{center} 
  273.  \setlength{\unitlength}{0.4pt}
  274.  \begin{picture}(80,30)
  275.   \thinlines
  276.   \put(0,5){\line(1,0){80}}
  277.   \put(0,0){\makebox(80,30){dip}}
  278.  \end{picture}
  279. \end{center}
  280.  
  281. The width of each character is minimized and this is important in english 
  282. writing. However, the height of each character is unimportant. It is the 
  283. vertical relationship between the character and its horizontal baseline which 
  284. matters. 
  285.  
  286. Consider now a few japanese characters and their horizontal baseline:
  287. \begin{center}
  288.  \setlength{\unitlength}{0.4pt}
  289.  \newsavebox{\watashi}
  290.  \sbox{\watashi}{% 
  291.   \begin{picture}(28,26)(-2,-2)%Bitmap 2512
  292.    \put(0.5,4.5){\circle*{1}}\put(0.5,15.5){\circle*{1}}
  293.    \put(0.5,19.5){\circle*{1}}\put(1.5,5.5){\circle*{1}}
  294.    \put(1.5,15.5){\circle*{1}}\put(1.5,19.5){\circle*{1}}
  295.    \put(2.5,6.5){\circle*{1}}\put(2.5,7.5){\circle*{1}}
  296.    \put(2.5,15.5){\circle*{1}}\put(2.5,19.5){\circle*{1}}
  297.    \put(3.5,7.5){\circle*{1}}\put(3.5,8.5){\circle*{1}}
  298.    \put(3.5,9.5){\circle*{1}}\put(3.5,15.5){\circle*{1}}
  299.    \put(3.5,20.5){\circle*{1}}\put(4.5,9.5){\circle*{1}}
  300.    \put(4.5,10.5){\circle*{1}}\put(4.5,11.5){\circle*{1}}
  301.    \put(4.5,12.5){\circle*{1}}\put(4.5,15.5){\circle*{1}}
  302.    \put(4.5,20.5){\circle*{1}}\put(5.5,0.5){\circle*{1}}
  303.    \put(5.5,1.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  304.    \put(5.5,3.5){\circle*{1}}\put(5.5,4.5){\circle*{1}}
  305.    \put(5.5,5.5){\circle*{1}}\put(5.5,6.5){\circle*{1}}
  306.    \put(5.5,7.5){\circle*{1}}\put(5.5,8.5){\circle*{1}}
  307.    \put(5.5,9.5){\circle*{1}}\put(5.5,10.5){\circle*{1}}
  308.    \put(5.5,11.5){\circle*{1}}\put(5.5,12.5){\circle*{1}}
  309.    \put(5.5,13.5){\circle*{1}}\put(5.5,14.5){\circle*{1}}
  310.    \put(5.5,15.5){\circle*{1}}\put(5.5,16.5){\circle*{1}}
  311.    \put(5.5,17.5){\circle*{1}}\put(5.5,18.5){\circle*{1}}
  312.    \put(5.5,19.5){\circle*{1}}\put(5.5,20.5){\circle*{1}}
  313.    \put(6.5,0.5){\circle*{1}}\put(6.5,1.5){\circle*{1}}
  314.    \put(6.5,2.5){\circle*{1}}\put(6.5,3.5){\circle*{1}}
  315.    \put(6.5,4.5){\circle*{1}}\put(6.5,5.5){\circle*{1}}
  316.    \put(6.5,6.5){\circle*{1}}\put(6.5,7.5){\circle*{1}}
  317.    \put(6.5,8.5){\circle*{1}}\put(6.5,9.5){\circle*{1}}
  318.    \put(6.5,10.5){\circle*{1}}\put(6.5,11.5){\circle*{1}}
  319.    \put(6.5,12.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  320.    \put(6.5,14.5){\circle*{1}}\put(6.5,15.5){\circle*{1}}
  321.    \put(6.5,16.5){\circle*{1}}\put(6.5,17.5){\circle*{1}}
  322.    \put(6.5,18.5){\circle*{1}}\put(6.5,19.5){\circle*{1}}
  323.    \put(6.5,20.5){\circle*{1}}\put(6.5,21.5){\circle*{1}}
  324.    \put(7.5,11.5){\circle*{1}}\put(7.5,15.5){\circle*{1}}
  325.    \put(7.5,21.5){\circle*{1}}\put(8.5,11.5){\circle*{1}}
  326.    \put(8.5,15.5){\circle*{1}}\put(8.5,21.5){\circle*{1}}
  327.    \put(8.5,22.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  328.    \put(9.5,10.5){\circle*{1}}\put(9.5,15.5){\circle*{1}}
  329.    \put(9.5,16.5){\circle*{1}}\put(9.5,22.5){\circle*{1}}
  330.    \put(9.5,23.5){\circle*{1}}\put(10.5,0.5){\circle*{1}}
  331.    \put(10.5,1.5){\circle*{1}}\put(10.5,2.5){\circle*{1}}
  332.    \put(10.5,8.5){\circle*{1}}\put(10.5,9.5){\circle*{1}}
  333.    \put(10.5,10.5){\circle*{1}}\put(10.5,15.5){\circle*{1}}
  334.    \put(10.5,16.5){\circle*{1}}\put(10.5,22.5){\circle*{1}}
  335.    \put(10.5,23.5){\circle*{1}}\put(11.5,1.5){\circle*{1}}
  336.    \put(11.5,2.5){\circle*{1}}\put(11.5,8.5){\circle*{1}}
  337.    \put(11.5,9.5){\circle*{1}}\put(11.5,15.5){\circle*{1}}
  338.    \put(11.5,22.5){\circle*{1}}\put(12.5,1.5){\circle*{1}}
  339.    \put(12.5,2.5){\circle*{1}}\put(13.5,1.5){\circle*{1}}
  340.    \put(13.5,2.5){\circle*{1}}\put(13.5,3.5){\circle*{1}}
  341.    \put(13.5,4.5){\circle*{1}}\put(14.5,2.5){\circle*{1}}
  342.    \put(14.5,5.5){\circle*{1}}\put(14.5,6.5){\circle*{1}}
  343.    \put(14.5,7.5){\circle*{1}}\put(14.5,8.5){\circle*{1}}
  344.    \put(15.5,2.5){\circle*{1}}\put(15.5,7.5){\circle*{1}}
  345.    \put(15.5,8.5){\circle*{1}}\put(15.5,9.5){\circle*{1}}
  346.    \put(15.5,10.5){\circle*{1}}\put(15.5,11.5){\circle*{1}}
  347.    \put(15.5,12.5){\circle*{1}}\put(15.5,13.5){\circle*{1}}
  348.    \put(15.5,14.5){\circle*{1}}\put(15.5,15.5){\circle*{1}}
  349.    \put(16.5,2.5){\circle*{1}}\put(16.5,11.5){\circle*{1}}
  350.    \put(16.5,12.5){\circle*{1}}\put(16.5,13.5){\circle*{1}}
  351.    \put(16.5,14.5){\circle*{1}}\put(16.5,15.5){\circle*{1}}
  352.    \put(16.5,16.5){\circle*{1}}\put(16.5,17.5){\circle*{1}}
  353.    \put(16.5,18.5){\circle*{1}}\put(16.5,19.5){\circle*{1}}
  354.    \put(16.5,20.5){\circle*{1}}\put(16.5,21.5){\circle*{1}}
  355.    \put(16.5,22.5){\circle*{1}}\put(16.5,23.5){\circle*{1}}
  356.    \put(17.5,2.5){\circle*{1}}\put(17.5,16.5){\circle*{1}}
  357.    \put(17.5,17.5){\circle*{1}}\put(17.5,18.5){\circle*{1}}
  358.    \put(17.5,19.5){\circle*{1}}\put(17.5,20.5){\circle*{1}}
  359.    \put(17.5,21.5){\circle*{1}}\put(17.5,22.5){\circle*{1}}
  360.    \put(18.5,3.5){\circle*{1}}\put(18.5,22.5){\circle*{1}}
  361.    \put(19.5,3.5){\circle*{1}}\put(19.5,7.5){\circle*{1}}
  362.    \put(20.5,3.5){\circle*{1}}\put(20.5,5.5){\circle*{1}}
  363.    \put(20.5,6.5){\circle*{1}}\put(21.5,3.5){\circle*{1}}
  364.    \put(21.5,4.5){\circle*{1}}\put(21.5,5.5){\circle*{1}}
  365.    \put(22.5,0.5){\circle*{1}}\put(22.5,1.5){\circle*{1}}
  366.    \put(22.5,2.5){\circle*{1}}\put(22.5,3.5){\circle*{1}}
  367.    \put(22.5,4.5){\circle*{1}}\put(23.5,0.5){\circle*{1}}
  368.    \put(23.5,1.5){\circle*{1}}\put(23.5,2.5){\circle*{1}}
  369.   \end{picture}}
  370.  \begin{picture}(250,28)
  371.   \thinlines
  372.   \put(0,0){\line(1,0){250}}
  373.   \put(20,0){%
  374.    \begin{picture}(28,26)(-2,-2)%Bitmap 288
  375.     \put(5.5,15.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  376.     \put(6.5,14.5){\circle*{1}}\put(7.5,13.5){\circle*{1}}
  377.     \put(7.5,14.5){\circle*{1}}\put(8.5,1.5){\circle*{1}}
  378.     \put(8.5,14.5){\circle*{1}}\put(9.5,1.5){\circle*{1}}
  379.     \put(9.5,14.5){\circle*{1}}\put(9.5,15.5){\circle*{1}}
  380.     \put(9.5,23.5){\circle*{1}}\put(10.5,1.5){\circle*{1}}
  381.     \put(10.5,15.5){\circle*{1}}\put(10.5,23.5){\circle*{1}}
  382.     \put(11.5,2.5){\circle*{1}}\put(11.5,15.5){\circle*{1}}
  383.     \put(11.5,16.5){\circle*{1}}\put(11.5,22.5){\circle*{1}}
  384.     \put(12.5,2.5){\circle*{1}}\put(12.5,16.5){\circle*{1}}
  385.     \put(12.5,22.5){\circle*{1}}\put(13.5,3.5){\circle*{1}}
  386.     \put(13.5,16.5){\circle*{1}}\put(13.5,21.5){\circle*{1}}
  387.     \put(13.5,22.5){\circle*{1}}\put(14.5,3.5){\circle*{1}}
  388.     \put(14.5,4.5){\circle*{1}}\put(14.5,16.5){\circle*{1}}
  389.     \put(14.5,20.5){\circle*{1}}\put(14.5,21.5){\circle*{1}}
  390.     \put(15.5,4.5){\circle*{1}}\put(15.5,5.5){\circle*{1}}
  391.     \put(15.5,6.5){\circle*{1}}\put(15.5,15.5){\circle*{1}}
  392.     \put(15.5,20.5){\circle*{1}}\put(15.5,21.5){\circle*{1}}
  393.     \put(16.5,5.5){\circle*{1}}\put(16.5,6.5){\circle*{1}}
  394.     \put(16.5,7.5){\circle*{1}}\put(16.5,8.5){\circle*{1}}
  395.     \put(16.5,9.5){\circle*{1}}\put(16.5,10.5){\circle*{1}}
  396.     \put(16.5,11.5){\circle*{1}}\put(16.5,12.5){\circle*{1}}
  397.     \put(16.5,13.5){\circle*{1}}\put(16.5,14.5){\circle*{1}}
  398.     \put(17.5,7.5){\circle*{1}}\put(17.5,8.5){\circle*{1}}
  399.     \put(17.5,9.5){\circle*{1}}\put(17.5,10.5){\circle*{1}}
  400.     \put(17.5,11.5){\circle*{1}}\put(17.5,12.5){\circle*{1}}
  401.     \put(17.5,13.5){\circle*{1}}
  402.    \end{picture}}
  403.   \put(50,0){\usebox{\watashi}}
  404.   \put(80,0){%
  405.    \begin{picture}(28,26)(-2,-2)%Bitmap 356
  406.     \put(6.5,10.5){\circle*{1}}\put(6.5,11.5){\circle*{1}}
  407.     \put(6.5,12.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  408.     \put(6.5,14.5){\circle*{1}}\put(6.5,15.5){\circle*{1}}
  409.     \put(6.5,16.5){\circle*{1}}\put(6.5,17.5){\circle*{1}}
  410.     \put(6.5,22.5){\circle*{1}}\put(6.5,23.5){\circle*{1}}
  411.     \put(7.5,9.5){\circle*{1}}\put(7.5,10.5){\circle*{1}}
  412.     \put(7.5,11.5){\circle*{1}}\put(7.5,12.5){\circle*{1}}
  413.     \put(7.5,13.5){\circle*{1}}\put(7.5,14.5){\circle*{1}}
  414.     \put(7.5,15.5){\circle*{1}}\put(7.5,16.5){\circle*{1}}
  415.     \put(7.5,17.5){\circle*{1}}\put(7.5,18.5){\circle*{1}}
  416.     \put(7.5,19.5){\circle*{1}}\put(7.5,20.5){\circle*{1}}
  417.     \put(7.5,21.5){\circle*{1}}\put(7.5,22.5){\circle*{1}}
  418.     \put(8.5,14.5){\circle*{1}}\put(8.5,15.5){\circle*{1}}
  419.     \put(9.5,16.5){\circle*{1}}\put(9.5,17.5){\circle*{1}}
  420.     \put(10.5,0.5){\circle*{1}}\put(10.5,18.5){\circle*{1}}
  421.     \put(10.5,19.5){\circle*{1}}\put(11.5,0.5){\circle*{1}}
  422.     \put(11.5,20.5){\circle*{1}}\put(12.5,1.5){\circle*{1}}
  423.     \put(12.5,21.5){\circle*{1}}\put(13.5,1.5){\circle*{1}}
  424.     \put(13.5,2.5){\circle*{1}}\put(13.5,21.5){\circle*{1}}
  425.     \put(14.5,2.5){\circle*{1}}\put(14.5,3.5){\circle*{1}}
  426.     \put(14.5,21.5){\circle*{1}}\put(15.5,3.5){\circle*{1}}
  427.     \put(15.5,4.5){\circle*{1}}\put(15.5,5.5){\circle*{1}}
  428.     \put(15.5,20.5){\circle*{1}}\put(15.5,21.5){\circle*{1}}
  429.     \put(16.5,4.5){\circle*{1}}\put(16.5,5.5){\circle*{1}}
  430.     \put(16.5,6.5){\circle*{1}}\put(16.5,7.5){\circle*{1}}
  431.     \put(16.5,8.5){\circle*{1}}\put(16.5,18.5){\circle*{1}}
  432.     \put(16.5,19.5){\circle*{1}}\put(16.5,20.5){\circle*{1}}
  433.     \put(17.5,6.5){\circle*{1}}\put(17.5,7.5){\circle*{1}}
  434.     \put(17.5,8.5){\circle*{1}}\put(17.5,9.5){\circle*{1}}
  435.     \put(17.5,10.5){\circle*{1}}\put(17.5,11.5){\circle*{1}}
  436.     \put(17.5,12.5){\circle*{1}}\put(17.5,13.5){\circle*{1}}
  437.     \put(17.5,14.5){\circle*{1}}\put(17.5,15.5){\circle*{1}}
  438.     \put(17.5,16.5){\circle*{1}}\put(17.5,17.5){\circle*{1}}
  439.     \put(17.5,18.5){\circle*{1}}\put(17.5,19.5){\circle*{1}}
  440.     \put(18.5,9.5){\circle*{1}}\put(18.5,10.5){\circle*{1}}
  441.     \put(18.5,11.5){\circle*{1}}\put(18.5,12.5){\circle*{1}}
  442.     \put(18.5,13.5){\circle*{1}}\put(18.5,14.5){\circle*{1}}
  443.     \put(18.5,15.5){\circle*{1}}\put(18.5,16.5){\circle*{1}}
  444.     \put(18.5,17.5){\circle*{1}}
  445.    \end{picture}}
  446.   \put(110,0){\usebox{\watashi}}
  447.   \put(140,0){%
  448.    \begin{picture}(28,26)(-2,-2)%Bitmap 2146
  449.     \put(1.5,0.5){\circle*{1}}\put(2.5,0.5){\circle*{1}}
  450.     \put(3.5,1.5){\circle*{1}}\put(4.5,2.5){\circle*{1}}
  451.     \put(4.5,3.5){\circle*{1}}\put(5.5,3.5){\circle*{1}}
  452.     \put(5.5,4.5){\circle*{1}}\put(5.5,5.5){\circle*{1}}
  453.     \put(5.5,6.5){\circle*{1}}\put(6.5,5.5){\circle*{1}}
  454.     \put(6.5,6.5){\circle*{1}}\put(6.5,7.5){\circle*{1}}
  455.     \put(6.5,8.5){\circle*{1}}\put(6.5,9.5){\circle*{1}}
  456.     \put(6.5,10.5){\circle*{1}}\put(6.5,11.5){\circle*{1}}
  457.     \put(6.5,12.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  458.     \put(6.5,14.5){\circle*{1}}\put(6.5,15.5){\circle*{1}}
  459.     \put(6.5,16.5){\circle*{1}}\put(6.5,17.5){\circle*{1}}
  460.     \put(6.5,18.5){\circle*{1}}\put(6.5,19.5){\circle*{1}}
  461.     \put(6.5,20.5){\circle*{1}}\put(6.5,21.5){\circle*{1}}
  462.     \put(6.5,22.5){\circle*{1}}\put(6.5,23.5){\circle*{1}}
  463.     \put(7.5,7.5){\circle*{1}}\put(7.5,8.5){\circle*{1}}
  464.     \put(7.5,9.5){\circle*{1}}\put(7.5,10.5){\circle*{1}}
  465.     \put(7.5,11.5){\circle*{1}}\put(7.5,12.5){\circle*{1}}
  466.     \put(7.5,13.5){\circle*{1}}\put(7.5,14.5){\circle*{1}}
  467.     \put(7.5,15.5){\circle*{1}}\put(7.5,16.5){\circle*{1}}
  468.     \put(7.5,17.5){\circle*{1}}\put(7.5,18.5){\circle*{1}}
  469.     \put(7.5,19.5){\circle*{1}}\put(7.5,20.5){\circle*{1}}
  470.     \put(7.5,21.5){\circle*{1}}\put(7.5,22.5){\circle*{1}}
  471.     \put(8.5,10.5){\circle*{1}}\put(8.5,16.5){\circle*{1}}
  472.     \put(8.5,22.5){\circle*{1}}\put(9.5,10.5){\circle*{1}}
  473.     \put(9.5,16.5){\circle*{1}}\put(9.5,22.5){\circle*{1}}
  474.     \put(10.5,10.5){\circle*{1}}\put(10.5,16.5){\circle*{1}}
  475.     \put(10.5,22.5){\circle*{1}}\put(11.5,10.5){\circle*{1}}
  476.     \put(11.5,16.5){\circle*{1}}\put(11.5,22.5){\circle*{1}}
  477.     \put(12.5,10.5){\circle*{1}}\put(12.5,16.5){\circle*{1}}
  478.     \put(12.5,22.5){\circle*{1}}\put(13.5,10.5){\circle*{1}}
  479.     \put(13.5,16.5){\circle*{1}}\put(13.5,22.5){\circle*{1}}
  480.     \put(14.5,1.5){\circle*{1}}\put(14.5,10.5){\circle*{1}}
  481.     \put(14.5,16.5){\circle*{1}}\put(14.5,22.5){\circle*{1}}
  482.     \put(15.5,1.5){\circle*{1}}\put(15.5,10.5){\circle*{1}}
  483.     \put(15.5,16.5){\circle*{1}}\put(15.5,22.5){\circle*{1}}
  484.     \put(16.5,0.5){\circle*{1}}\put(16.5,1.5){\circle*{1}}
  485.     \put(16.5,10.5){\circle*{1}}\put(16.5,16.5){\circle*{1}}
  486.     \put(16.5,22.5){\circle*{1}}\put(17.5,0.5){\circle*{1}}
  487.     \put(17.5,1.5){\circle*{1}}\put(17.5,2.5){\circle*{1}}
  488.     \put(17.5,3.5){\circle*{1}}\put(17.5,4.5){\circle*{1}}
  489.     \put(17.5,5.5){\circle*{1}}\put(17.5,6.5){\circle*{1}}
  490.     \put(17.5,7.5){\circle*{1}}\put(17.5,8.5){\circle*{1}}
  491.     \put(17.5,9.5){\circle*{1}}\put(17.5,10.5){\circle*{1}}
  492.     \put(17.5,11.5){\circle*{1}}\put(17.5,12.5){\circle*{1}}
  493.     \put(17.5,13.5){\circle*{1}}\put(17.5,14.5){\circle*{1}}
  494.     \put(17.5,15.5){\circle*{1}}\put(17.5,16.5){\circle*{1}}
  495.     \put(17.5,17.5){\circle*{1}}\put(17.5,18.5){\circle*{1}}
  496.     \put(17.5,19.5){\circle*{1}}\put(17.5,20.5){\circle*{1}}
  497.     \put(17.5,21.5){\circle*{1}}\put(17.5,22.5){\circle*{1}}
  498.     \put(17.5,23.5){\circle*{1}}\put(18.5,1.5){\circle*{1}}
  499.     \put(18.5,2.5){\circle*{1}}\put(18.5,3.5){\circle*{1}}
  500.     \put(18.5,4.5){\circle*{1}}\put(18.5,5.5){\circle*{1}}
  501.     \put(18.5,6.5){\circle*{1}}\put(18.5,7.5){\circle*{1}}
  502.     \put(18.5,8.5){\circle*{1}}\put(18.5,9.5){\circle*{1}}
  503.     \put(18.5,10.5){\circle*{1}}\put(18.5,11.5){\circle*{1}}
  504.     \put(18.5,12.5){\circle*{1}}\put(18.5,13.5){\circle*{1}}
  505.     \put(18.5,14.5){\circle*{1}}\put(18.5,15.5){\circle*{1}}
  506.     \put(18.5,16.5){\circle*{1}}\put(18.5,17.5){\circle*{1}}
  507.     \put(18.5,18.5){\circle*{1}}\put(18.5,19.5){\circle*{1}}
  508.     \put(18.5,20.5){\circle*{1}}\put(18.5,21.5){\circle*{1}}
  509.     \put(18.5,22.5){\circle*{1}}\put(18.5,23.5){\circle*{1}}
  510.     \put(19.5,22.5){\circle*{1}}
  511.    \end{picture}}
  512.   \put(170,0){\usebox{\watashi}}
  513.   \put(200,0){%
  514.    \begin{picture}(28,26)(-2,-2)%Bitmap 2549
  515.     \put(4.5,0.5){\circle*{1}}\put(4.5,1.5){\circle*{1}}
  516.     \put(4.5,2.5){\circle*{1}}\put(4.5,3.5){\circle*{1}}
  517.     \put(4.5,4.5){\circle*{1}}\put(4.5,5.5){\circle*{1}}
  518.     \put(4.5,6.5){\circle*{1}}\put(4.5,7.5){\circle*{1}}
  519.     \put(4.5,8.5){\circle*{1}}\put(4.5,9.5){\circle*{1}}
  520.     \put(4.5,10.5){\circle*{1}}\put(4.5,11.5){\circle*{1}}
  521.     \put(4.5,12.5){\circle*{1}}\put(4.5,13.5){\circle*{1}}
  522.     \put(4.5,14.5){\circle*{1}}\put(4.5,15.5){\circle*{1}}
  523.     \put(4.5,16.5){\circle*{1}}\put(4.5,17.5){\circle*{1}}
  524.     \put(4.5,18.5){\circle*{1}}\put(4.5,19.5){\circle*{1}}
  525.     \put(4.5,20.5){\circle*{1}}\put(5.5,0.5){\circle*{1}}
  526.     \put(5.5,1.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  527.     \put(5.5,3.5){\circle*{1}}\put(5.5,4.5){\circle*{1}}
  528.     \put(5.5,5.5){\circle*{1}}\put(5.5,6.5){\circle*{1}}
  529.     \put(5.5,7.5){\circle*{1}}\put(5.5,8.5){\circle*{1}}
  530.     \put(5.5,9.5){\circle*{1}}\put(5.5,10.5){\circle*{1}}
  531.     \put(5.5,11.5){\circle*{1}}\put(5.5,12.5){\circle*{1}}
  532.     \put(5.5,13.5){\circle*{1}}\put(5.5,14.5){\circle*{1}}
  533.     \put(5.5,15.5){\circle*{1}}\put(5.5,16.5){\circle*{1}}
  534.     \put(5.5,17.5){\circle*{1}}\put(5.5,18.5){\circle*{1}}
  535.     \put(5.5,19.5){\circle*{1}}\put(6.5,1.5){\circle*{1}}
  536.     \put(6.5,7.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  537.     \put(6.5,19.5){\circle*{1}}\put(7.5,1.5){\circle*{1}}
  538.     \put(7.5,7.5){\circle*{1}}\put(7.5,13.5){\circle*{1}}
  539.     \put(7.5,19.5){\circle*{1}}\put(8.5,1.5){\circle*{1}}
  540.     \put(8.5,7.5){\circle*{1}}\put(8.5,13.5){\circle*{1}}
  541.     \put(8.5,19.5){\circle*{1}}\put(9.5,1.5){\circle*{1}}
  542.     \put(9.5,7.5){\circle*{1}}\put(9.5,13.5){\circle*{1}}
  543.     \put(9.5,19.5){\circle*{1}}\put(10.5,1.5){\circle*{1}}
  544.     \put(10.5,7.5){\circle*{1}}\put(10.5,13.5){\circle*{1}}
  545.     \put(10.5,19.5){\circle*{1}}\put(10.5,20.5){\circle*{1}}
  546.     \put(10.5,21.5){\circle*{1}}\put(10.5,22.5){\circle*{1}}
  547.     \put(10.5,23.5){\circle*{1}}\put(11.5,1.5){\circle*{1}}
  548.     \put(11.5,7.5){\circle*{1}}\put(11.5,13.5){\circle*{1}}
  549.     \put(11.5,19.5){\circle*{1}}\put(11.5,21.5){\circle*{1}}
  550.     \put(11.5,22.5){\circle*{1}}\put(12.5,1.5){\circle*{1}}
  551.     \put(12.5,7.5){\circle*{1}}\put(12.5,13.5){\circle*{1}}
  552.     \put(12.5,19.5){\circle*{1}}\put(12.5,22.5){\circle*{1}}
  553.     \put(13.5,1.5){\circle*{1}}\put(13.5,7.5){\circle*{1}}
  554.     \put(13.5,13.5){\circle*{1}}\put(13.5,19.5){\circle*{1}}
  555.     \put(14.5,1.5){\circle*{1}}\put(14.5,7.5){\circle*{1}}
  556.     \put(14.5,13.5){\circle*{1}}\put(14.5,19.5){\circle*{1}}
  557.     \put(15.5,1.5){\circle*{1}}\put(15.5,7.5){\circle*{1}}
  558.     \put(15.5,13.5){\circle*{1}}\put(15.5,19.5){\circle*{1}}
  559.     \put(16.5,1.5){\circle*{1}}\put(16.5,7.5){\circle*{1}}
  560.     \put(16.5,13.5){\circle*{1}}\put(16.5,19.5){\circle*{1}}
  561.     \put(17.5,1.5){\circle*{1}}\put(17.5,7.5){\circle*{1}}
  562.     \put(17.5,13.5){\circle*{1}}\put(17.5,19.5){\circle*{1}}
  563.     \put(18.5,0.5){\circle*{1}}\put(18.5,1.5){\circle*{1}}
  564.     \put(18.5,2.5){\circle*{1}}\put(18.5,3.5){\circle*{1}}
  565.     \put(18.5,4.5){\circle*{1}}\put(18.5,5.5){\circle*{1}}
  566.     \put(18.5,6.5){\circle*{1}}\put(18.5,7.5){\circle*{1}}
  567.     \put(18.5,8.5){\circle*{1}}\put(18.5,9.5){\circle*{1}}
  568.     \put(18.5,10.5){\circle*{1}}\put(18.5,11.5){\circle*{1}}
  569.     \put(18.5,12.5){\circle*{1}}\put(18.5,13.5){\circle*{1}}
  570.     \put(18.5,14.5){\circle*{1}}\put(18.5,15.5){\circle*{1}}
  571.     \put(18.5,16.5){\circle*{1}}\put(18.5,17.5){\circle*{1}}
  572.     \put(18.5,18.5){\circle*{1}}\put(18.5,19.5){\circle*{1}}
  573.     \put(18.5,20.5){\circle*{1}}\put(19.5,0.5){\circle*{1}}
  574.     \put(19.5,1.5){\circle*{1}}\put(19.5,2.5){\circle*{1}}
  575.     \put(19.5,3.5){\circle*{1}}\put(19.5,4.5){\circle*{1}}
  576.     \put(19.5,5.5){\circle*{1}}\put(19.5,6.5){\circle*{1}}
  577.     \put(19.5,7.5){\circle*{1}}\put(19.5,8.5){\circle*{1}}
  578.     \put(19.5,9.5){\circle*{1}}\put(19.5,10.5){\circle*{1}}
  579.     \put(19.5,11.5){\circle*{1}}\put(19.5,12.5){\circle*{1}}
  580.     \put(19.5,13.5){\circle*{1}}\put(19.5,14.5){\circle*{1}}
  581.     \put(19.5,15.5){\circle*{1}}\put(19.5,16.5){\circle*{1}}
  582.     \put(19.5,17.5){\circle*{1}}\put(19.5,18.5){\circle*{1}}
  583.     \put(19.5,19.5){\circle*{1}}\put(19.5,20.5){\circle*{1}}
  584.     \put(20.5,19.5){\circle*{1}}
  585.    \end{picture}}
  586.  \end{picture}
  587.  \hspace{1cm}
  588.  \begin{picture}(250,28)
  589.   \thinlines
  590.   \put(0,0){\line(1,0){250}}
  591.   \put(38,0){%
  592.    \begin{picture}(22,26)(-2,-2)%Bitmap 2988
  593.     \put(0.5,0.5){\circle*{1}}\put(0.5,1.5){\circle*{1}}
  594.     \put(0.5,2.5){\circle*{1}}\put(0.5,3.5){\circle*{1}}
  595.     \put(0.5,4.5){\circle*{1}}\put(0.5,5.5){\circle*{1}}
  596.     \put(0.5,6.5){\circle*{1}}\put(0.5,7.5){\circle*{1}}
  597.     \put(0.5,8.5){\circle*{1}}\put(0.5,9.5){\circle*{1}}
  598.     \put(0.5,10.5){\circle*{1}}\put(0.5,11.5){\circle*{1}}
  599.     \put(1.5,0.5){\circle*{1}}\put(1.5,1.5){\circle*{1}}
  600.     \put(1.5,2.5){\circle*{1}}\put(1.5,3.5){\circle*{1}}
  601.     \put(1.5,4.5){\circle*{1}}\put(1.5,5.5){\circle*{1}}
  602.     \put(1.5,6.5){\circle*{1}}\put(1.5,7.5){\circle*{1}}
  603.     \put(1.5,8.5){\circle*{1}}\put(1.5,9.5){\circle*{1}}
  604.     \put(1.5,10.5){\circle*{1}}\put(2.5,2.5){\circle*{1}}
  605.     \put(2.5,10.5){\circle*{1}}\put(3.5,2.5){\circle*{1}}
  606.     \put(3.5,10.5){\circle*{1}}\put(4.5,2.5){\circle*{1}}
  607.     \put(4.5,10.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  608.     \put(5.5,10.5){\circle*{1}}\put(6.5,2.5){\circle*{1}}
  609.     \put(6.5,10.5){\circle*{1}}\put(7.5,2.5){\circle*{1}}
  610.     \put(7.5,10.5){\circle*{1}}\put(7.5,11.5){\circle*{1}}
  611.     \put(7.5,12.5){\circle*{1}}\put(7.5,13.5){\circle*{1}}
  612.     \put(7.5,14.5){\circle*{1}}\put(7.5,15.5){\circle*{1}}
  613.     \put(7.5,16.5){\circle*{1}}\put(7.5,17.5){\circle*{1}}
  614.     \put(7.5,18.5){\circle*{1}}\put(7.5,19.5){\circle*{1}}
  615.     \put(7.5,20.5){\circle*{1}}\put(7.5,21.5){\circle*{1}}
  616.     \put(7.5,22.5){\circle*{1}}\put(7.5,23.5){\circle*{1}}
  617.     \put(8.5,2.5){\circle*{1}}\put(8.5,10.5){\circle*{1}}
  618.     \put(8.5,11.5){\circle*{1}}\put(8.5,12.5){\circle*{1}}
  619.     \put(8.5,13.5){\circle*{1}}\put(8.5,14.5){\circle*{1}}
  620.     \put(8.5,15.5){\circle*{1}}\put(8.5,16.5){\circle*{1}}
  621.     \put(8.5,17.5){\circle*{1}}\put(8.5,18.5){\circle*{1}}
  622.     \put(8.5,19.5){\circle*{1}}\put(8.5,20.5){\circle*{1}}
  623.     \put(8.5,21.5){\circle*{1}}\put(8.5,22.5){\circle*{1}}
  624.     \put(8.5,23.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  625.     \put(9.5,10.5){\circle*{1}}\put(9.5,17.5){\circle*{1}}
  626.     \put(9.5,23.5){\circle*{1}}\put(10.5,2.5){\circle*{1}}
  627.     \put(10.5,10.5){\circle*{1}}\put(10.5,17.5){\circle*{1}}
  628.     \put(11.5,2.5){\circle*{1}}\put(11.5,10.5){\circle*{1}}
  629.     \put(11.5,17.5){\circle*{1}}\put(12.5,2.5){\circle*{1}}
  630.     \put(12.5,10.5){\circle*{1}}\put(12.5,17.5){\circle*{1}}
  631.     \put(13.5,2.5){\circle*{1}}\put(13.5,10.5){\circle*{1}}
  632.     \put(13.5,17.5){\circle*{1}}\put(14.5,0.5){\circle*{1}}
  633.     \put(14.5,1.5){\circle*{1}}\put(14.5,2.5){\circle*{1}}
  634.     \put(14.5,3.5){\circle*{1}}\put(14.5,4.5){\circle*{1}}
  635.     \put(14.5,5.5){\circle*{1}}\put(14.5,6.5){\circle*{1}}
  636.     \put(14.5,7.5){\circle*{1}}\put(14.5,8.5){\circle*{1}}
  637.     \put(14.5,9.5){\circle*{1}}\put(14.5,10.5){\circle*{1}}
  638.     \put(14.5,11.5){\circle*{1}}\put(14.5,17.5){\circle*{1}}
  639.     \put(15.5,0.5){\circle*{1}}\put(15.5,1.5){\circle*{1}}
  640.     \put(15.5,2.5){\circle*{1}}\put(15.5,3.5){\circle*{1}}
  641.     \put(15.5,4.5){\circle*{1}}\put(15.5,5.5){\circle*{1}}
  642.     \put(15.5,6.5){\circle*{1}}\put(15.5,7.5){\circle*{1}}
  643.     \put(15.5,8.5){\circle*{1}}\put(15.5,9.5){\circle*{1}}
  644.     \put(15.5,10.5){\circle*{1}}\put(15.5,11.5){\circle*{1}}
  645.     \put(15.5,17.5){\circle*{1}}\put(15.5,18.5){\circle*{1}}
  646.     \put(16.5,10.5){\circle*{1}}\put(16.5,17.5){\circle*{1}}
  647.     \put(16.5,18.5){\circle*{1}}\put(17.5,17.5){\circle*{1}}
  648.    \end{picture}}
  649.   \put(62,0){\usebox{\watashi}}
  650.   \put(92,0){%
  651.    \begin{picture}(21,26)(-2,-2)%Bitmap 3570
  652.     \put(0.5,0.5){\circle*{1}}\put(0.5,1.5){\circle*{1}}
  653.     \put(0.5,2.5){\circle*{1}}\put(0.5,3.5){\circle*{1}}
  654.     \put(0.5,4.5){\circle*{1}}\put(0.5,5.5){\circle*{1}}
  655.     \put(0.5,6.5){\circle*{1}}\put(0.5,7.5){\circle*{1}}
  656.     \put(0.5,8.5){\circle*{1}}\put(0.5,9.5){\circle*{1}}
  657.     \put(0.5,10.5){\circle*{1}}\put(0.5,11.5){\circle*{1}}
  658.     \put(0.5,12.5){\circle*{1}}\put(0.5,13.5){\circle*{1}}
  659.     \put(0.5,14.5){\circle*{1}}\put(0.5,15.5){\circle*{1}}
  660.     \put(0.5,16.5){\circle*{1}}\put(0.5,17.5){\circle*{1}}
  661.     \put(0.5,18.5){\circle*{1}}\put(0.5,19.5){\circle*{1}}
  662.     \put(0.5,20.5){\circle*{1}}\put(0.5,21.5){\circle*{1}}
  663.     \put(0.5,22.5){\circle*{1}}\put(1.5,0.5){\circle*{1}}
  664.     \put(1.5,1.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  665.     \put(1.5,3.5){\circle*{1}}\put(1.5,4.5){\circle*{1}}
  666.     \put(1.5,5.5){\circle*{1}}\put(1.5,6.5){\circle*{1}}
  667.     \put(1.5,7.5){\circle*{1}}\put(1.5,8.5){\circle*{1}}
  668.     \put(1.5,9.5){\circle*{1}}\put(1.5,10.5){\circle*{1}}
  669.     \put(1.5,11.5){\circle*{1}}\put(1.5,12.5){\circle*{1}}
  670.     \put(1.5,13.5){\circle*{1}}\put(1.5,14.5){\circle*{1}}
  671.     \put(1.5,15.5){\circle*{1}}\put(1.5,16.5){\circle*{1}}
  672.     \put(1.5,17.5){\circle*{1}}\put(1.5,18.5){\circle*{1}}
  673.     \put(1.5,19.5){\circle*{1}}\put(1.5,20.5){\circle*{1}}
  674.     \put(1.5,21.5){\circle*{1}}\put(2.5,2.5){\circle*{1}}
  675.     \put(2.5,12.5){\circle*{1}}\put(2.5,21.5){\circle*{1}}
  676.     \put(3.5,2.5){\circle*{1}}\put(3.5,12.5){\circle*{1}}
  677.     \put(3.5,21.5){\circle*{1}}\put(4.5,2.5){\circle*{1}}
  678.     \put(4.5,12.5){\circle*{1}}\put(4.5,21.5){\circle*{1}}
  679.     \put(5.5,2.5){\circle*{1}}\put(5.5,12.5){\circle*{1}}
  680.     \put(5.5,21.5){\circle*{1}}\put(6.5,2.5){\circle*{1}}
  681.     \put(6.5,12.5){\circle*{1}}\put(6.5,21.5){\circle*{1}}
  682.     \put(7.5,2.5){\circle*{1}}\put(7.5,12.5){\circle*{1}}
  683.     \put(7.5,21.5){\circle*{1}}\put(8.5,2.5){\circle*{1}}
  684.     \put(8.5,12.5){\circle*{1}}\put(8.5,21.5){\circle*{1}}
  685.     \put(9.5,2.5){\circle*{1}}\put(9.5,12.5){\circle*{1}}
  686.     \put(9.5,21.5){\circle*{1}}\put(10.5,2.5){\circle*{1}}
  687.     \put(10.5,12.5){\circle*{1}}\put(10.5,21.5){\circle*{1}}
  688.     \put(11.5,2.5){\circle*{1}}\put(11.5,12.5){\circle*{1}}
  689.     \put(11.5,21.5){\circle*{1}}\put(12.5,2.5){\circle*{1}}
  690.     \put(12.5,12.5){\circle*{1}}\put(12.5,21.5){\circle*{1}}
  691.     \put(13.5,2.5){\circle*{1}}\put(13.5,12.5){\circle*{1}}
  692.     \put(13.5,21.5){\circle*{1}}\put(14.5,0.5){\circle*{1}}
  693.     \put(14.5,1.5){\circle*{1}}\put(14.5,2.5){\circle*{1}}
  694.     \put(14.5,3.5){\circle*{1}}\put(14.5,4.5){\circle*{1}}
  695.     \put(14.5,5.5){\circle*{1}}\put(14.5,6.5){\circle*{1}}
  696.     \put(14.5,7.5){\circle*{1}}\put(14.5,8.5){\circle*{1}}
  697.     \put(14.5,9.5){\circle*{1}}\put(14.5,10.5){\circle*{1}}
  698.     \put(14.5,11.5){\circle*{1}}\put(14.5,12.5){\circle*{1}}
  699.     \put(14.5,13.5){\circle*{1}}\put(14.5,14.5){\circle*{1}}
  700.     \put(14.5,15.5){\circle*{1}}\put(14.5,16.5){\circle*{1}}
  701.     \put(14.5,17.5){\circle*{1}}\put(14.5,18.5){\circle*{1}}
  702.     \put(14.5,19.5){\circle*{1}}\put(14.5,20.5){\circle*{1}}
  703.     \put(14.5,21.5){\circle*{1}}\put(14.5,22.5){\circle*{1}}
  704.     \put(15.5,0.5){\circle*{1}}\put(15.5,1.5){\circle*{1}}
  705.     \put(15.5,2.5){\circle*{1}}\put(15.5,3.5){\circle*{1}}
  706.     \put(15.5,4.5){\circle*{1}}\put(15.5,5.5){\circle*{1}}
  707.     \put(15.5,6.5){\circle*{1}}\put(15.5,7.5){\circle*{1}}
  708.     \put(15.5,8.5){\circle*{1}}\put(15.5,9.5){\circle*{1}}
  709.     \put(15.5,10.5){\circle*{1}}\put(15.5,11.5){\circle*{1}}
  710.     \put(15.5,12.5){\circle*{1}}\put(15.5,13.5){\circle*{1}}
  711.     \put(15.5,14.5){\circle*{1}}\put(15.5,15.5){\circle*{1}}
  712.     \put(15.5,16.5){\circle*{1}}\put(15.5,17.5){\circle*{1}}
  713.     \put(15.5,18.5){\circle*{1}}\put(15.5,19.5){\circle*{1}}
  714.     \put(15.5,20.5){\circle*{1}}\put(15.5,21.5){\circle*{1}}
  715.     \put(15.5,22.5){\circle*{1}}\put(16.5,21.5){\circle*{1}}
  716.    \end{picture}}
  717.   \put(115,0){\usebox{\watashi}}
  718.   \put(145,0){%
  719.    \begin{picture}(16,26)(-2,-2)%Bitmap 3994
  720.     \put(0.5,0.5){\circle*{1}}\put(0.5,1.5){\circle*{1}}
  721.     \put(0.5,2.5){\circle*{1}}\put(0.5,3.5){\circle*{1}}
  722.     \put(0.5,4.5){\circle*{1}}\put(0.5,5.5){\circle*{1}}
  723.     \put(0.5,6.5){\circle*{1}}\put(0.5,7.5){\circle*{1}}
  724.     \put(0.5,8.5){\circle*{1}}\put(0.5,9.5){\circle*{1}}
  725.     \put(0.5,10.5){\circle*{1}}\put(0.5,11.5){\circle*{1}}
  726.     \put(0.5,12.5){\circle*{1}}\put(0.5,13.5){\circle*{1}}
  727.     \put(0.5,14.5){\circle*{1}}\put(0.5,15.5){\circle*{1}}
  728.     \put(0.5,16.5){\circle*{1}}\put(0.5,17.5){\circle*{1}}
  729.     \put(0.5,18.5){\circle*{1}}\put(0.5,19.5){\circle*{1}}
  730.     \put(0.5,20.5){\circle*{1}}\put(0.5,21.5){\circle*{1}}
  731.     \put(0.5,22.5){\circle*{1}}\put(0.5,23.5){\circle*{1}}
  732.     \put(1.5,0.5){\circle*{1}}\put(1.5,1.5){\circle*{1}}
  733.     \put(1.5,2.5){\circle*{1}}\put(1.5,3.5){\circle*{1}}
  734.     \put(1.5,4.5){\circle*{1}}\put(1.5,5.5){\circle*{1}}
  735.     \put(1.5,6.5){\circle*{1}}\put(1.5,7.5){\circle*{1}}
  736.     \put(1.5,8.5){\circle*{1}}\put(1.5,9.5){\circle*{1}}
  737.     \put(1.5,10.5){\circle*{1}}\put(1.5,11.5){\circle*{1}}
  738.     \put(1.5,12.5){\circle*{1}}\put(1.5,13.5){\circle*{1}}
  739.     \put(1.5,14.5){\circle*{1}}\put(1.5,15.5){\circle*{1}}
  740.     \put(1.5,16.5){\circle*{1}}\put(1.5,17.5){\circle*{1}}
  741.     \put(1.5,18.5){\circle*{1}}\put(1.5,19.5){\circle*{1}}
  742.     \put(1.5,20.5){\circle*{1}}\put(1.5,21.5){\circle*{1}}
  743.     \put(1.5,22.5){\circle*{1}}\put(1.5,23.5){\circle*{1}}
  744.     \put(2.5,15.5){\circle*{1}}\put(2.5,23.5){\circle*{1}}
  745.     \put(3.5,15.5){\circle*{1}}\put(4.5,14.5){\circle*{1}}
  746.     \put(5.5,14.5){\circle*{1}}\put(6.5,13.5){\circle*{1}}
  747.     \put(7.5,12.5){\circle*{1}}\put(7.5,13.5){\circle*{1}}
  748.     \put(8.5,11.5){\circle*{1}}\put(8.5,12.5){\circle*{1}}
  749.     \put(9.5,10.5){\circle*{1}}\put(9.5,11.5){\circle*{1}}
  750.     \put(9.5,12.5){\circle*{1}}\put(10.5,9.5){\circle*{1}}
  751.     \put(10.5,10.5){\circle*{1}}\put(10.5,11.5){\circle*{1}}
  752.     \put(11.5,9.5){\circle*{1}}\put(11.5,10.5){\circle*{1}}
  753.    \end{picture}}
  754.   \put(163,0){\usebox{\watashi}}
  755.   \put(193,0){%
  756.    \begin{picture}(17,26)(-2,-2)%Bitmap 4645
  757.     \put(0.5,0.5){\circle*{1}}\put(0.5,1.5){\circle*{1}}
  758.     \put(0.5,2.5){\circle*{1}}\put(0.5,3.5){\circle*{1}}
  759.     \put(0.5,4.5){\circle*{1}}\put(0.5,5.5){\circle*{1}}
  760.     \put(0.5,6.5){\circle*{1}}\put(0.5,7.5){\circle*{1}}
  761.     \put(0.5,8.5){\circle*{1}}\put(0.5,9.5){\circle*{1}}
  762.     \put(0.5,10.5){\circle*{1}}\put(0.5,11.5){\circle*{1}}
  763.     \put(0.5,12.5){\circle*{1}}\put(0.5,13.5){\circle*{1}}
  764.     \put(0.5,14.5){\circle*{1}}\put(0.5,15.5){\circle*{1}}
  765.     \put(0.5,16.5){\circle*{1}}\put(0.5,17.5){\circle*{1}}
  766.     \put(0.5,18.5){\circle*{1}}\put(0.5,19.5){\circle*{1}}
  767.     \put(0.5,20.5){\circle*{1}}\put(0.5,21.5){\circle*{1}}
  768.     \put(0.5,22.5){\circle*{1}}\put(1.5,0.5){\circle*{1}}
  769.     \put(1.5,1.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  770.     \put(1.5,3.5){\circle*{1}}\put(1.5,4.5){\circle*{1}}
  771.     \put(1.5,5.5){\circle*{1}}\put(1.5,6.5){\circle*{1}}
  772.     \put(1.5,7.5){\circle*{1}}\put(1.5,8.5){\circle*{1}}
  773.     \put(1.5,9.5){\circle*{1}}\put(1.5,10.5){\circle*{1}}
  774.     \put(1.5,11.5){\circle*{1}}\put(1.5,12.5){\circle*{1}}
  775.     \put(1.5,13.5){\circle*{1}}\put(1.5,14.5){\circle*{1}}
  776.     \put(1.5,15.5){\circle*{1}}\put(1.5,16.5){\circle*{1}}
  777.     \put(1.5,17.5){\circle*{1}}\put(1.5,18.5){\circle*{1}}
  778.     \put(1.5,19.5){\circle*{1}}\put(1.5,20.5){\circle*{1}}
  779.     \put(1.5,21.5){\circle*{1}}\put(2.5,21.5){\circle*{1}}
  780.     \put(3.5,21.5){\circle*{1}}\put(4.5,21.5){\circle*{1}}
  781.     \put(5.5,21.5){\circle*{1}}\put(6.5,7.5){\circle*{1}}
  782.     \put(6.5,21.5){\circle*{1}}\put(7.5,7.5){\circle*{1}}
  783.     \put(7.5,21.5){\circle*{1}}\put(8.5,6.5){\circle*{1}}
  784.     \put(8.5,7.5){\circle*{1}}\put(8.5,21.5){\circle*{1}}
  785.     \put(9.5,6.5){\circle*{1}}\put(9.5,7.5){\circle*{1}}
  786.     \put(9.5,21.5){\circle*{1}}\put(10.5,6.5){\circle*{1}}
  787.     \put(10.5,7.5){\circle*{1}}\put(10.5,8.5){\circle*{1}}
  788.     \put(10.5,9.5){\circle*{1}}\put(10.5,10.5){\circle*{1}}
  789.     \put(10.5,11.5){\circle*{1}}\put(10.5,12.5){\circle*{1}}
  790.     \put(10.5,13.5){\circle*{1}}\put(10.5,14.5){\circle*{1}}
  791.     \put(10.5,15.5){\circle*{1}}\put(10.5,16.5){\circle*{1}}
  792.     \put(10.5,17.5){\circle*{1}}\put(10.5,18.5){\circle*{1}}
  793.     \put(10.5,19.5){\circle*{1}}\put(10.5,20.5){\circle*{1}}
  794.     \put(10.5,21.5){\circle*{1}}\put(10.5,22.5){\circle*{1}}
  795.     \put(11.5,7.5){\circle*{1}}\put(11.5,8.5){\circle*{1}}
  796.     \put(11.5,9.5){\circle*{1}}\put(11.5,10.5){\circle*{1}}
  797.     \put(11.5,11.5){\circle*{1}}\put(11.5,12.5){\circle*{1}}
  798.     \put(11.5,13.5){\circle*{1}}\put(11.5,14.5){\circle*{1}}
  799.     \put(11.5,15.5){\circle*{1}}\put(11.5,16.5){\circle*{1}}
  800.     \put(11.5,17.5){\circle*{1}}\put(11.5,18.5){\circle*{1}}
  801.     \put(11.5,19.5){\circle*{1}}\put(11.5,20.5){\circle*{1}}
  802.     \put(11.5,21.5){\circle*{1}}\put(11.5,22.5){\circle*{1}}
  803.     \put(12.5,21.5){\circle*{1}}
  804.    \end{picture}}
  805.  \end{picture}
  806.  \sbox{\watashi}{}
  807. \end{center}
  808.  
  809. The japanese characters on the left have a fixed width. The characters on the 
  810. right have a minimized width, just like ordinary english characters. 
  811. Personally, I find that minimized width is desirable when writing japanese 
  812. horizontally. Also note that although this is not visible in these two 
  813. examples, the japanese characters are as short as possible while respecting the 
  814. vertical relationship with their horizontal baseline. 
  815.  
  816. Let us now consider vertical roman writing. If one was to simply reverse the 
  817. previous argument regarding roman characters and their horizontal baseline, one 
  818. would conclude that it is important to minimize the height of each roman 
  819. character. However, the width of each character would be unimportant. It is the 
  820. horizontal relationship between the roman character and the vertical baseline 
  821. that would appear crucial. 
  822.  
  823. That reasoning could be correct if there was such a thing as vertical roman 
  824. writing, but it fails in the japanese case for two good reasons. First of all, 
  825. there is no vertical baseline available in \MFT. That implies that the concept 
  826. of an horizontal relationship between a japanese character and its vertical 
  827. baseline is undefined. The next best thing available to us is to use fixed 
  828. width japanese characters. In such a case, the sought horizontal relationship 
  829. is implied in the bitmap itself. 
  830.  
  831. Secondly, some japanese characters can be constructed by piling up other 
  832. characters on top of one another. For example, consider the characters two, 
  833. one, and three: 
  834. \begin{center}
  835.  \setlength{\unitlength}{0.4pt}
  836.  \begin{picture}(30,94)(0,-10)
  837.   \thinlines
  838.   \put(0,-10){\line(0,1){104}}
  839.   \put(0,56){%
  840.     \begin{picture}(28,26)(-2,-2)%Bitmap 3561 ni
  841.      \put(0.5,2.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  842.      \put(2.5,2.5){\circle*{1}}\put(3.5,2.5){\circle*{1}}
  843.      \put(3.5,20.5){\circle*{1}}\put(4.5,2.5){\circle*{1}}
  844.      \put(4.5,20.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  845.      \put(5.5,20.5){\circle*{1}}\put(6.5,2.5){\circle*{1}}
  846.      \put(6.5,20.5){\circle*{1}}\put(7.5,2.5){\circle*{1}}
  847.      \put(7.5,20.5){\circle*{1}}\put(8.5,2.5){\circle*{1}}
  848.      \put(8.5,20.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  849.      \put(9.5,20.5){\circle*{1}}\put(10.5,2.5){\circle*{1}}
  850.      \put(10.5,20.5){\circle*{1}}\put(11.5,2.5){\circle*{1}}
  851.      \put(11.5,20.5){\circle*{1}}\put(12.5,2.5){\circle*{1}}
  852.      \put(12.5,20.5){\circle*{1}}\put(13.5,2.5){\circle*{1}}
  853.      \put(13.5,20.5){\circle*{1}}\put(14.5,2.5){\circle*{1}}
  854.      \put(14.5,20.5){\circle*{1}}\put(15.5,2.5){\circle*{1}}
  855.      \put(15.5,20.5){\circle*{1}}\put(16.5,2.5){\circle*{1}}
  856.      \put(16.5,20.5){\circle*{1}}\put(17.5,2.5){\circle*{1}}
  857.      \put(17.5,20.5){\circle*{1}}\put(18.5,2.5){\circle*{1}}
  858.      \put(18.5,20.5){\circle*{1}}\put(18.5,21.5){\circle*{1}}
  859.      \put(19.5,2.5){\circle*{1}}\put(19.5,20.5){\circle*{1}}
  860.      \put(19.5,21.5){\circle*{1}}\put(20.5,2.5){\circle*{1}}
  861.      \put(20.5,20.5){\circle*{1}}\put(21.5,2.5){\circle*{1}}
  862.      \put(21.5,3.5){\circle*{1}}\put(22.5,2.5){\circle*{1}}
  863.      \put(22.5,3.5){\circle*{1}}\put(23.5,2.5){\circle*{1}}
  864.     \end{picture}}
  865.   \put(0,28){%
  866.     \begin{picture}(28,26)(-2,-2)%Bitmap 1486 ichi
  867.      \put(0.5,12.5){\circle*{1}}\put(1.5,12.5){\circle*{1}}
  868.      \put(2.5,12.5){\circle*{1}}\put(3.5,12.5){\circle*{1}}
  869.      \put(4.5,12.5){\circle*{1}}\put(5.5,12.5){\circle*{1}}
  870.      \put(6.5,12.5){\circle*{1}}\put(7.5,12.5){\circle*{1}}
  871.      \put(8.5,12.5){\circle*{1}}\put(9.5,12.5){\circle*{1}}
  872.      \put(10.5,12.5){\circle*{1}}\put(11.5,12.5){\circle*{1}}
  873.      \put(12.5,12.5){\circle*{1}}\put(13.5,12.5){\circle*{1}}
  874.      \put(14.5,12.5){\circle*{1}}\put(15.5,12.5){\circle*{1}}
  875.      \put(16.5,12.5){\circle*{1}}\put(17.5,12.5){\circle*{1}}
  876.      \put(18.5,12.5){\circle*{1}}\put(19.5,12.5){\circle*{1}}
  877.      \put(20.5,12.5){\circle*{1}}\put(20.5,13.5){\circle*{1}}
  878.      \put(21.5,12.5){\circle*{1}}\put(21.5,13.5){\circle*{1}}
  879.      \put(21.5,14.5){\circle*{1}}\put(22.5,12.5){\circle*{1}}
  880.      \put(22.5,13.5){\circle*{1}}\put(23.5,12.5){\circle*{1}}
  881.     \end{picture}}
  882.   \put(0,0){%
  883.     \begin{picture}(28,26)(-2,-2)%Bitmap 2460 san
  884.      \put(0.5,2.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  885.      \put(2.5,2.5){\circle*{1}}\put(2.5,21.5){\circle*{1}}
  886.      \put(3.5,2.5){\circle*{1}}\put(3.5,21.5){\circle*{1}}
  887.      \put(4.5,2.5){\circle*{1}}\put(4.5,12.5){\circle*{1}}
  888.      \put(4.5,21.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  889.      \put(5.5,12.5){\circle*{1}}\put(5.5,21.5){\circle*{1}}
  890.      \put(6.5,2.5){\circle*{1}}\put(6.5,12.5){\circle*{1}}
  891.      \put(6.5,21.5){\circle*{1}}\put(7.5,2.5){\circle*{1}}
  892.      \put(7.5,12.5){\circle*{1}}\put(7.5,21.5){\circle*{1}}
  893.      \put(8.5,2.5){\circle*{1}}\put(8.5,12.5){\circle*{1}}
  894.      \put(8.5,21.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  895.      \put(9.5,12.5){\circle*{1}}\put(9.5,21.5){\circle*{1}}
  896.      \put(10.5,2.5){\circle*{1}}\put(10.5,12.5){\circle*{1}}
  897.      \put(10.5,21.5){\circle*{1}}\put(11.5,2.5){\circle*{1}}
  898.      \put(11.5,12.5){\circle*{1}}\put(11.5,21.5){\circle*{1}}
  899.      \put(12.5,2.5){\circle*{1}}\put(12.5,12.5){\circle*{1}}
  900.      \put(12.5,21.5){\circle*{1}}\put(13.5,2.5){\circle*{1}}
  901.      \put(13.5,12.5){\circle*{1}}\put(13.5,21.5){\circle*{1}}
  902.      \put(14.5,2.5){\circle*{1}}\put(14.5,12.5){\circle*{1}}
  903.      \put(14.5,21.5){\circle*{1}}\put(15.5,2.5){\circle*{1}}
  904.      \put(15.5,12.5){\circle*{1}}\put(15.5,21.5){\circle*{1}}
  905.      \put(16.5,2.5){\circle*{1}}\put(16.5,12.5){\circle*{1}}
  906.      \put(16.5,21.5){\circle*{1}}\put(17.5,2.5){\circle*{1}}
  907.      \put(17.5,12.5){\circle*{1}}\put(17.5,13.5){\circle*{1}}
  908.      \put(17.5,21.5){\circle*{1}}\put(18.5,2.5){\circle*{1}}
  909.      \put(18.5,12.5){\circle*{1}}\put(18.5,13.5){\circle*{1}}
  910.      \put(18.5,21.5){\circle*{1}}\put(19.5,2.5){\circle*{1}}
  911.      \put(19.5,12.5){\circle*{1}}\put(19.5,21.5){\circle*{1}}
  912.      \put(19.5,22.5){\circle*{1}}\put(20.5,2.5){\circle*{1}}
  913.      \put(20.5,21.5){\circle*{1}}\put(20.5,22.5){\circle*{1}}
  914.      \put(21.5,2.5){\circle*{1}}\put(21.5,3.5){\circle*{1}}
  915.      \put(21.5,21.5){\circle*{1}}\put(22.5,2.5){\circle*{1}}
  916.      \put(22.5,3.5){\circle*{1}}\put(23.5,2.5){\circle*{1}}
  917.     \end{picture}}
  918.  \end{picture}
  919.  \hspace{1cm}
  920.  \begin{picture}(30,94)(0,-10)
  921.   \thinlines
  922.   \put(0,-10){\line(0,1){104}}
  923.   \put(0,45.5){%
  924.     \begin{picture}(28,23)(-2,0)%Bitmap 3561 ni
  925.      \put(0.5,2.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  926.      \put(2.5,2.5){\circle*{1}}\put(3.5,2.5){\circle*{1}}
  927.      \put(3.5,20.5){\circle*{1}}\put(4.5,2.5){\circle*{1}}
  928.      \put(4.5,20.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  929.      \put(5.5,20.5){\circle*{1}}\put(6.5,2.5){\circle*{1}}
  930.      \put(6.5,20.5){\circle*{1}}\put(7.5,2.5){\circle*{1}}
  931.      \put(7.5,20.5){\circle*{1}}\put(8.5,2.5){\circle*{1}}
  932.      \put(8.5,20.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  933.      \put(9.5,20.5){\circle*{1}}\put(10.5,2.5){\circle*{1}}
  934.      \put(10.5,20.5){\circle*{1}}\put(11.5,2.5){\circle*{1}}
  935.      \put(11.5,20.5){\circle*{1}}\put(12.5,2.5){\circle*{1}}
  936.      \put(12.5,20.5){\circle*{1}}\put(13.5,2.5){\circle*{1}}
  937.      \put(13.5,20.5){\circle*{1}}\put(14.5,2.5){\circle*{1}}
  938.      \put(14.5,20.5){\circle*{1}}\put(15.5,2.5){\circle*{1}}
  939.      \put(15.5,20.5){\circle*{1}}\put(16.5,2.5){\circle*{1}}
  940.      \put(16.5,20.5){\circle*{1}}\put(17.5,2.5){\circle*{1}}
  941.      \put(17.5,20.5){\circle*{1}}\put(18.5,2.5){\circle*{1}}
  942.      \put(18.5,20.5){\circle*{1}}\put(18.5,21.5){\circle*{1}}
  943.      \put(19.5,2.5){\circle*{1}}\put(19.5,20.5){\circle*{1}}
  944.      \put(19.5,21.5){\circle*{1}}\put(20.5,2.5){\circle*{1}}
  945.      \put(20.5,20.5){\circle*{1}}\put(21.5,2.5){\circle*{1}}
  946.      \put(21.5,3.5){\circle*{1}}\put(22.5,2.5){\circle*{1}}
  947.      \put(22.5,3.5){\circle*{1}}\put(23.5,2.5){\circle*{1}}
  948.     \end{picture}}
  949.   \put(0,39.5){%
  950.     \begin{picture}(28,16)(-2,10)%Bitmap 1486 ichi
  951.      \put(0.5,12.5){\circle*{1}}\put(1.5,12.5){\circle*{1}}
  952.      \put(2.5,12.5){\circle*{1}}\put(3.5,12.5){\circle*{1}}
  953.      \put(4.5,12.5){\circle*{1}}\put(5.5,12.5){\circle*{1}}
  954.      \put(6.5,12.5){\circle*{1}}\put(7.5,12.5){\circle*{1}}
  955.      \put(8.5,12.5){\circle*{1}}\put(9.5,12.5){\circle*{1}}
  956.      \put(10.5,12.5){\circle*{1}}\put(11.5,12.5){\circle*{1}}
  957.      \put(12.5,12.5){\circle*{1}}\put(13.5,12.5){\circle*{1}}
  958.      \put(14.5,12.5){\circle*{1}}\put(15.5,12.5){\circle*{1}}
  959.      \put(16.5,12.5){\circle*{1}}\put(17.5,12.5){\circle*{1}}
  960.      \put(18.5,12.5){\circle*{1}}\put(19.5,12.5){\circle*{1}}
  961.      \put(20.5,12.5){\circle*{1}}\put(20.5,13.5){\circle*{1}}
  962.      \put(21.5,12.5){\circle*{1}}\put(21.5,13.5){\circle*{1}}
  963.      \put(21.5,14.5){\circle*{1}}\put(22.5,12.5){\circle*{1}}
  964.      \put(22.5,13.5){\circle*{1}}\put(23.5,12.5){\circle*{1}}
  965.     \end{picture}}
  966.   \put(0,15.5){%
  967.     \begin{picture}(28,24)(-2,0)%Bitmap 2460 san
  968.      \put(0.5,2.5){\circle*{1}}\put(1.5,2.5){\circle*{1}}
  969.      \put(2.5,2.5){\circle*{1}}\put(2.5,21.5){\circle*{1}}
  970.      \put(3.5,2.5){\circle*{1}}\put(3.5,21.5){\circle*{1}}
  971.      \put(4.5,2.5){\circle*{1}}\put(4.5,12.5){\circle*{1}}
  972.      \put(4.5,21.5){\circle*{1}}\put(5.5,2.5){\circle*{1}}
  973.      \put(5.5,12.5){\circle*{1}}\put(5.5,21.5){\circle*{1}}
  974.      \put(6.5,2.5){\circle*{1}}\put(6.5,12.5){\circle*{1}}
  975.      \put(6.5,21.5){\circle*{1}}\put(7.5,2.5){\circle*{1}}
  976.      \put(7.5,12.5){\circle*{1}}\put(7.5,21.5){\circle*{1}}
  977.      \put(8.5,2.5){\circle*{1}}\put(8.5,12.5){\circle*{1}}
  978.      \put(8.5,21.5){\circle*{1}}\put(9.5,2.5){\circle*{1}}
  979.      \put(9.5,12.5){\circle*{1}}\put(9.5,21.5){\circle*{1}}
  980.      \put(10.5,2.5){\circle*{1}}\put(10.5,12.5){\circle*{1}}
  981.      \put(10.5,21.5){\circle*{1}}\put(11.5,2.5){\circle*{1}}
  982.      \put(11.5,12.5){\circle*{1}}\put(11.5,21.5){\circle*{1}}
  983.      \put(12.5,2.5){\circle*{1}}\put(12.5,12.5){\circle*{1}}
  984.      \put(12.5,21.5){\circle*{1}}\put(13.5,2.5){\circle*{1}}
  985.      \put(13.5,12.5){\circle*{1}}\put(13.5,21.5){\circle*{1}}
  986.      \put(14.5,2.5){\circle*{1}}\put(14.5,12.5){\circle*{1}}
  987.      \put(14.5,21.5){\circle*{1}}\put(15.5,2.5){\circle*{1}}
  988.      \put(15.5,12.5){\circle*{1}}\put(15.5,21.5){\circle*{1}}
  989.      \put(16.5,2.5){\circle*{1}}\put(16.5,12.5){\circle*{1}}
  990.      \put(16.5,21.5){\circle*{1}}\put(17.5,2.5){\circle*{1}}
  991.      \put(17.5,12.5){\circle*{1}}\put(17.5,13.5){\circle*{1}}
  992.      \put(17.5,21.5){\circle*{1}}\put(18.5,2.5){\circle*{1}}
  993.      \put(18.5,12.5){\circle*{1}}\put(18.5,13.5){\circle*{1}}
  994.      \put(18.5,21.5){\circle*{1}}\put(19.5,2.5){\circle*{1}}
  995.      \put(19.5,12.5){\circle*{1}}\put(19.5,21.5){\circle*{1}}
  996.      \put(19.5,22.5){\circle*{1}}\put(20.5,2.5){\circle*{1}}
  997.      \put(20.5,21.5){\circle*{1}}\put(20.5,22.5){\circle*{1}}
  998.      \put(21.5,2.5){\circle*{1}}\put(21.5,3.5){\circle*{1}}
  999.      \put(21.5,21.5){\circle*{1}}\put(22.5,2.5){\circle*{1}}
  1000.      \put(22.5,3.5){\circle*{1}}\put(23.5,2.5){\circle*{1}}
  1001.     \end{picture}}
  1002.  \end{picture}
  1003. \end{center}
  1004.  
  1005. The japanese characters on the right are harder to read than the ones on the 
  1006. left. This problem is partly alleviated if one uses vertically, characters with 
  1007. minimized height that have been created for horizontal use. As discussed 
  1008. before, the vertical distance between such characters and their horizontal 
  1009. baseline is respected. This space could occasionally act as breathing space if 
  1010. such horizontal characters were to be used vertically. But this is nevertheless 
  1011. not satisfactory since an incomplete and unnatural solution. The only way to 
  1012. avoid this problem altogether is to use fixed height characters when writing 
  1013. japanese vertically, just as was done in the left column. 
  1014.  
  1015. The conclusion seems clear. If you intend to use your \JemTeX\ fonts vertically 
  1016. with some vertical writing style unknown to me, you should definitely create 
  1017. fixed width and fixed height fonts. This is the only natural choice available. 
  1018. If you will use your fonts only horizontally, then you probably want minimized 
  1019. width fonts. Personally, I also minimized their height since the resulting 
  1020. fonts are slightly smaller in size. 
  1021.  
  1022. \label{positioning}
  1023.  
  1024. The second topic I would like to discuss here is relevant primarily for 
  1025. horizontal writing. Given intermixed roman and japanese characters, how should 
  1026. they relate to one another. More precisely, how tall should japanese characters 
  1027. be with respect to capital roman ones, and what vertical relationship should 
  1028. they have with their horizontal baseline. 
  1029.  
  1030. It is a fact that most japanese characters are far more complex than any given 
  1031. roman one. Therefore, japanese character should be relatively big. On the other 
  1032. hand, tall centered japanese characters will lie lower on the horizontal 
  1033. baseline than capital roman characters do, and will extend vertically more than 
  1034. capital roman ones do. Consequently, the reader's eyes might have to go up and 
  1035. down as they look over the text horizontally. A compromise is clearly called 
  1036. for. 
  1037.  
  1038. The first writing style considered here will be referred to as a {\em 
  1039. dictionary\/} style since usually used in japanese dictionaries. In this style, 
  1040. japanese characters are substantially taller than capital roman ones. This 
  1041. makes it possible to use small japanese characters along with even smaller 
  1042. roman ones to save space while maintaining readability. The japanese characters 
  1043. also lie quite low on the horizontal baseline and extend vertically exactly the 
  1044. same as capital roman characters do. Take a close look at your favorite 
  1045. japanese dictionary.
  1046.  
  1047. I will refer to a more conventional japanese font as a {\em standard\/} style. 
  1048. In this one, the japanese characters are still taller than capital roman ones, 
  1049. but by a smaller amount than before. The japanese characters lie a little bit 
  1050. lower on the horizontal baseline than capital roman characters do, and also 
  1051. extend a little bit more vertically than capital roman ones do. They are 
  1052. vertically centered as well as possible with respect to capital roman letter. 
  1053. Many users of \JemTeX\ requested such a font style.
  1054.  
  1055. Here again, you will have to decide which style you prefer. In the first two 
  1056. releases of \JemTeX, I used my japanese dictionaries to derive ideal font 
  1057. characteristics. Since then, numerous people taught me that dictionary fonts 
  1058. are quite specialized. Chances are you will want to use the standard style. 
  1059. Personally, I am now permanently switching to it.
  1060.  
  1061. \subsection{The {\tt JIS2MF} Code Generator}
  1062. \label{thejis2mfcodegenerator}
  1063.  
  1064. Given a bitmap, my program \verb"JIS2MF" can construct an equivalent continuous 
  1065. character and generate \MFT\ code for it. The \MFT\ program can then use this 
  1066. code to generate a standard \TeX\ font. You have been supplied with the source 
  1067. and the compressed compiled version of this Pascal program. Note that the file 
  1068. \verb"JIS24" should be available in the current directory to run \verb"JIS2MF". 
  1069. This fairly big file contains all the bitmaps making up the JIS~24 dot font. 
  1070.  
  1071. The first practical problem is to decide on font names and their content. Not 
  1072. everybody is running newer versions of \TeX\ and its drivers, allowing for 
  1073. 256~characters in a font. This includes me! Therefore, I put only 
  1074. 128~characters in my fonts. Unfortunately, this implies that I cannot use the 
  1075. same scheme as J\TeX\ since the latter uses 256~characters per font. However, I 
  1076. keep my new standard simple by organizing characters sequentially. I also leave 
  1077. character~0 of the first font empty so that character~$x$ of the first font 
  1078. corresponds to bitmap~$x$ of the JIS~24 dot font. 
  1079.  
  1080. \TeX\ does not allow numbers in font names. Therefore, the names \verb"kanji00" 
  1081. all the way to \verb"kanji60" are not possible. Table~\ref{thejemtexfonts} 
  1082. lists the names I am using.
  1083.  
  1084. \begin{table}[htb]
  1085.  \begin{center}
  1086.   \begin{footnotesize}
  1087.    \begin{tabular}{cccccccc}
  1088.     \verb"kanjiaa" & \verb"kanjiab" & \verb"kanjiac" & \verb"kanjiad" &
  1089.     \verb"kanjiae" & \verb"kanjiaf" & \verb"kanjiag" & \verb"kanjiah" \\
  1090.        $\vdots$    &    $\vdots$    &    $\vdots$    &    $\vdots$    &
  1091.        $\vdots$    &    $\vdots$    &    $\vdots$    &    $\vdots$    \\
  1092.     \verb"kanjiga" & \verb"kanjigb" & \verb"kanjigc" & \verb"kanjigd" &
  1093.     \verb"kanjige" & \verb"kanjigf" & \verb"kanjigg" & \verb"kanjigh" \\
  1094.     \verb"kanjiha" & \verb"kanjihb" & \verb"kanjihc" & \verb"kanjihd" &
  1095.     \verb"kanjihe"
  1096.    \end{tabular}
  1097.   \end{footnotesize}
  1098.  \end{center}
  1099.  \caption{The \JemTeX\ Fonts.}
  1100.  \label{thejemtexfonts}
  1101. \end{table}
  1102.  
  1103. \begin{table}[htb]
  1104.  \begin{center}
  1105.   \begin{minipage}{\textwidth}
  1106.    \begin{small}
  1107.     \begin{tabbing}
  1108.      \verb"kanjiaa": Beginning of common english and japanese characters. \\
  1109.      \verb"kanjiae": Most foreign characters.                             \\
  1110.      \verb"kanjiaf": Beginning of most extended characters.               \\
  1111.      \verb"kanjiba": First of three empty fonts.                          \\
  1112.      \verb"kanjibd": Beginning of level~1 kanjis.                         \\
  1113.      \verb"kanjiec": Transition between level~1 and level~2 kanjis.       \\
  1114.      \verb"kanjihe": End of level~2 kanjis.
  1115.     \end{tabbing}
  1116.    \end{small}
  1117.   \end{minipage}
  1118.  \end{center}
  1119.  \caption{Description of the \JemTeX\ Fonts.}
  1120.  \label{descriptionofthejemtexfonts}
  1121. \end{table}
  1122.  
  1123. Several users complained about the time necessary to generate these fonts, 
  1124. especially on the original 4.77~MHz IBM-PC. To help them decide which \JemTeX\ 
  1125. fonts they are likely to need, Table~\ref{descriptionofthejemtexfonts} contains 
  1126. a brief description of all of them. I found through daily use that I almost 
  1127. never use level~2 fonts. However, a typical 4~page document uses every level~1 
  1128. font. 
  1129.  
  1130. The last remaining preliminary detail is the question of bitmap numbering. The 
  1131. bitmaps in \verb"JIS24" are numbered consecutively from~1 to~7806. The first 
  1132. bitmap is empty, since it is the japanese space character. Many other 
  1133. characters in the \JemTeX\ extended JIS~24 dot font are also left empty. 
  1134. \verb"JIS2MF" ignores such characters altogether and will leave an undefined 
  1135. character when it encounters one. This can be quite handy for somebody wishing 
  1136. to create fonts using some other standard, like J\TeX. Suppose you wish to 
  1137. leave some characters undefined in the font you are currently building. By 
  1138. specifying bitmap~1 at the right places, the corresponding characters will be 
  1139. left undefined. 
  1140.  
  1141. My utility \verb"JIS2MF" requires the following information to operate:
  1142. \begin{description}
  1143.  \item[Font Name:] The name of the font you are creating. \verb"JIS2MF" will 
  1144.                    add for you the extension \verb".mf", so do not specify it. 
  1145.                    The program also acts differently depending on whether or 
  1146.                    not the font name you supply is a \JemTeX\ font name, like 
  1147.                    \verb"kanjidf". 
  1148.  \item[Writing Style:] The characteristics of your font, essentially fixed 
  1149.                        versus proportional dimensions and dictionary versus 
  1150.                        standard positioning of the japanese characters. 
  1151.  \item[Bitmap Numbers:] The number of all the bitmaps making up the current 
  1152.                         font. Specifying bitmap~0 terminates the process. 
  1153. \end{description} 
  1154.  
  1155. \begin{table}[htb]
  1156.  \begin{center}
  1157.   \begin{tabular}{l|cccc}
  1158.     {\tt JIS2MF}  & Command Line &   Font    & Writing  & Bitmap   \\
  1159.         Mode      &  Parameters  &   Name    &  Style   & Numbers  \\
  1160.    \hline
  1161.    Manual         &   $\times$   &  $\surd$  & $\surd$  & $\surd$  \\
  1162.    Semi-Automatic &   $\surd$    &  (other)  & Optional & $\surd$  \\
  1163.    Automatic      &   $\surd$    & (\JemTeX) & Optional & $\times$ \\
  1164.    Batch          &   $\surd$    & $\times$  & Optional & $\times$
  1165.   \end{tabular}
  1166.  \end{center}
  1167.  \caption{The {\tt JIS2MF} Modes.}
  1168.  \label{thejis2mfmodes}
  1169. \end{table}
  1170.  
  1171. How much and what information you must supply depends on which mode 
  1172. \verb"JIS2MF" is in when you run it. Table~\ref{thejis2mfmodes} shows all the 
  1173. modes currently available.
  1174.  
  1175. If you simply start \verb"JIS2MF" without any command line information, it will 
  1176. run in manual mode where you must answer questions interactively throughout the 
  1177. operation. In Table~\ref{thejis2mfmodes}, a $\surd$ indicates information that 
  1178. will be required of you interactively. A $\times$ indicates information 
  1179. irrelevant, or that you will not be asked for interactively. 
  1180.  
  1181. The other three more advanced modes can only be accessed by specifying some 
  1182. additional command line information. First, you can specify on the command line 
  1183. the name of the font to be built. For example, here is how I would generate the 
  1184. first \JemTeX\ font:
  1185. \begin{quote}%Don't put spaces after the next line!
  1186. \begin{verbatim}
  1187. JIS2MF kanjiaa
  1188. \end{verbatim}
  1189. \end{quote}
  1190. You can also add to such a command some \verb"JIS2MF" parameters. These always 
  1191. begin with a \verb"/" or a \verb"-", and any combination or small and capital 
  1192. letters is acceptable. 
  1193.  
  1194. For the last three modes listed in Table~\ref{thejis2mfmodes}, proportional 
  1195. width, proportional height, and standard positioning are assumed as default 
  1196. writing styles. However, you may override or confirm any of these default 
  1197. values with the appropriate command line parameter. The recognized ones are 
  1198. listed in Tables~\ref{widthparameters}, \ref{heightparameters}, 
  1199. and~\ref{positioningparameters}. 
  1200.  
  1201. \vspace*{\fill}
  1202.  
  1203. \begin{table}[htb]
  1204.  \begin{center}
  1205.   \begin{tabular}{ll}
  1206.    \mbox{$\left.\parbox{4.6cm}{%
  1207.     \verb"/FixedWidth" \\
  1208.     \verb"/FixedX" \\
  1209.     \verb"/NoProportionalWidth" \\
  1210.     \verb"/NoProportionalX"}\right\}$} & Fixed width. \\[8mm]
  1211.    \mbox{$\left.\parbox{4.6cm}{%
  1212.     \verb"/NoFixedWidth" \\
  1213.     \verb"/NoFixedX" \\
  1214.     \verb"/ProportionalWidth" \\
  1215.     \verb"/ProportionalX"}\right\}$}   & Minimized width.
  1216.   \end{tabular}
  1217.  \end{center}
  1218.  \caption{Width Parameters.}
  1219.  \label{widthparameters}
  1220. \end{table}
  1221.  
  1222. \vspace*{\fill}
  1223.  
  1224. \newpage %improve a bad page break
  1225.  
  1226. \begin{table}[htb]
  1227.  \begin{center}
  1228.   \begin{tabular}{ll}
  1229.    \mbox{$\left.\parbox{4.6cm}{%
  1230.     \verb"/FixedHeight" \\
  1231.     \verb"/FixedY" \\
  1232.     \verb"/NoProportionalHeight" \\
  1233.     \verb"/NoProportionalY"}\right\}$} & Fixed height. \\[8mm]
  1234.    \mbox{$\left.\parbox{4.6cm}{%
  1235.     \verb"/NoFixedHeight" \\
  1236.     \verb"/NoFixedY" \\
  1237.     \verb"/ProportionalHeight" \\
  1238.     \verb"/ProportionalY"}\right\}$}   & Minimized height.
  1239.   \end{tabular}
  1240.  \end{center}
  1241.  \caption{Height Parameters.}
  1242.  \label{heightparameters}
  1243.  \begin{center}
  1244.   \begin{tabular}{ll}
  1245.    \verb"/Standard"   & Standard positioning. \\
  1246.    \verb"/Dictionary" & Dictionary positioning.
  1247.   \end{tabular}
  1248.  \end{center}
  1249.  \caption{Positioning Parameters.}
  1250.  \label{positioningparameters}
  1251. \end{table}
  1252.  
  1253. Here is how I would generate a \JemTeX\ font to be used vertically:
  1254. \begin{quote}%Don't put spaces after the next line!
  1255. \begin{verbatim}
  1256. JIS2MF kanjiaa /FixedWidth /FixedHeight
  1257. \end{verbatim}
  1258. \end{quote}
  1259. In the last two examples, since the font names specified are \JemTeX\ font 
  1260. names, \verb"JIS2MF" supplies all the bitmap numbers for you; that's the 
  1261. automatic mode. If the font name is not a \JemTeX\ one, then you are asked 
  1262. interactively for the bitmap numbers; that's the semi-automatic mode. If you 
  1263. plan on using a lot \verb"JIS2MF" semi-automatically, you may find piping 
  1264. advantageous. 
  1265.  
  1266. \label{batch}
  1267.  
  1268. The remaining mode is the batch mode. As its name implies, it is designed for 
  1269. people using batch files. To trigger this mode, use the \verb"/batch" command 
  1270. line parameter. In this mode, \verb"JIS2MF" looks in the current directory to 
  1271. determine the latest \JemTeX\ font generated. It then generates the next one, 
  1272. if possible. 
  1273.  
  1274. There are two ways of using this feature. The simplest one is to generate the 
  1275. \MFT\ code for all the \JemTeX\ fonts. To do so, create and execute the 
  1276. following \verb"SIMPLE.BAT" batch file: 
  1277. \begin{quote}%Don't put spaces after the next line!
  1278. \begin{verbatim}
  1279. JIS2MF /NoFixedWidth /NoFixedHeight /Standard /Batch
  1280. IF NOT ERRORLEVEL 1 SIMPLE
  1281. \end{verbatim}
  1282. \end{quote}
  1283.  
  1284. In this example, the code for the font \verb"kanjiaa" is first created. If all 
  1285. went well, \verb"SIMPLE" executes again. It finds the file \verb"kanjiaa.mf" 
  1286. in the current directory and therefore generates \verb"kanjiab.mf". Eventually, 
  1287. the code for the font \verb"kanjihe" will be produced. When called once more, 
  1288. \verb"JIS2MF" realizes that there is no such thing as a \JemTeX\ font 
  1289. \verb"kanjihf" and stops with an error. The current batch file \verb"SIMPLE" 
  1290. then terminates. 
  1291.  
  1292. Although this procedure is correct, it also requires 36~Mb of disk space! To 
  1293. avoid this, I use a more involved procedure. Here is the batch file 
  1294. \verb"COMPLEX.BAT": 
  1295. \begin{quote}%Don't put spaces after the next line!
  1296. \begin{verbatim}
  1297. JIS2MF /NoFixedWidth /NoFixedHeight /Standard /Batch
  1298. IF ERRORLEVEL 1 GOTO TERMINATE
  1299. FOR %%1 IN (kanji??.mf) DO CALL METAFONT %%1
  1300. ERASE kanji??.mf
  1301. COMPLEX
  1302. :TERMINATE
  1303. \end{verbatim}
  1304. \end{quote}
  1305.  
  1306. As in the previous example, \verb"JIS2MF" first creates the file 
  1307. \verb"kanjiaa.mf". The batch file \verb"METAFONT.BAT" is then called with the 
  1308. parameter \verb"kanjiaa.mf". \MFT\ is to be discussed in 
  1309. Subsection~\ref{runningmetafont}, but suffice to say that the files 
  1310. \verb"kanjiaa.tfm" and \verb"kanjiaa.pk" are created by the subroutine 
  1311. \verb"METAFONT". To save disk space, the file \verb"kanjiaa.mf" is then 
  1312. deleted. Finally, this cycle starts all over again. This procedure works fine 
  1313. because \verb"JIS2MF" looks for \verb"*.mf" {\em and\/} \verb"*.tfm" files when 
  1314. trying to decide which font should be handled next. 
  1315.  
  1316. \subsection{Running METAFONT}
  1317. \label{runningmetafont}
  1318.  
  1319. The \MFT\ program comes in two versions; a small one with a 64~Kb work space, 
  1320. and a big one with a 256~Kb work space. Although the big version is more 
  1321. capable, the small one is preferred whenever possible since it runs faster.
  1322. Here is a list of the \emTeX\ files necessary for the small 80286 version: 
  1323. \begin{quote}%Don't put spaces after the next line!
  1324. \begin{verbatim}
  1325. MF       EXE   197840   8-04-90  10:29p
  1326. MF       POO    23028   8-04-90   9:42p
  1327. CM       BAS   107412   9-19-90  11:13a
  1328. \end{verbatim} 
  1329. \end{quote} 
  1330.  
  1331. \newpage %improve a bad page break
  1332.  
  1333. The files for the big 80286 version are:
  1334. \begin{quote}%Don't put spaces after the next line!
  1335. \begin{verbatim}
  1336. MF       EXE   238996   8-04-90  11:15p
  1337. MF       POO    23028   8-04-90  10:32p
  1338. CM       BAS   215128   9-19-90  11:13a
  1339. \end{verbatim} 
  1340. \end{quote} 
  1341.  
  1342. The program to compress the forthcoming fonts is:
  1343. \begin{quote}%Don't put spaces after the next line!
  1344. \begin{verbatim}
  1345. GFTOPK   EXE    52825   9-15-90   1:13a
  1346. \end{verbatim} 
  1347. \end{quote} 
  1348.  
  1349. Finally, you also need a small file, describing the characteristics of the 
  1350. device for which the fonts are intended. I use the file \verb"epsonfx.mf", 
  1351. which is given below. Several such files are included in the file 
  1352. \verb"local.mf" supplied with \emTeX, and there are small libraries of them in 
  1353. \TeX\ circles. 
  1354. \begin{quote}%Don't put spaces after the next line!
  1355. \begin{verbatim}
  1356. mode_def epsonfx =     % Epson FX-80 (240x216)
  1357.  proofing:=0;          % no, we're not making proofs
  1358.  fontmaking:=1;        % yes, we are making a font
  1359.  tracingtitles:=0;     % no, don't show titles in the log
  1360.  pixels_per_inch:=240; % 240 dots/inch horizontally
  1361.  blacker:=0;           % don't make the pens any blacker
  1362.  fillin:=0;            % and don't compensate for fillin
  1363.  o_correction:=.2;     % but suppress most overshoots
  1364.  aspect_ratio:=9/10;   % 216 dots/inch vertically
  1365.  enddef;
  1366. \end{verbatim}
  1367. \end{quote} 
  1368.  
  1369. Font sizes are measured in magsteps. Typical magsteps are~$0.0$, $0.5$, $1.0$, 
  1370. $2.0$, $3.0$, $4.0$, and~$5.0$. I find that most kanjis look acceptable on my 
  1371. \mbox{9-pin} printer starting at magstep~$2.0$, and all kanjis are acceptable 
  1372. starting at magstep~$3.0$. Hiraganas and katakanas are fairly simple 
  1373. characters, and they look good at any magsteps. Table~\ref{12ptfontsizes} on 
  1374. page~\pageref{12ptfontsizes} lists common font sizes.
  1375.  
  1376. \label{mftproof}
  1377.  
  1378. You can run big \MFT\ in proof mode where each character is displayed 
  1379. graphically, but no font useful for us is created. The command I use is: 
  1380. \begin{quote}%Don't put spaces after the next line!
  1381. \begin{verbatim}
  1382. MF &cm kanjiaa >NUL:
  1383. \end{verbatim}
  1384. \end{quote}
  1385.  
  1386. \newpage %improve a bad page break
  1387.  
  1388. \label{mftstandard}
  1389.  
  1390. You can run small \MFT\ in standard mode, which will generate usable fonts. 
  1391. Here are the commands to create \verb"kanjiaa.tfm" and \verb"kanjiaa.pk":
  1392. \begin{quote}
  1393. \begin{small}%Don't put spaces after the next line!
  1394. \begin{verbatim}
  1395. MF &cm \mode:=epsonfx; \mag:=magstep(0.0); \input kanjiaa.mf
  1396. GFTOPK kanjiaa.240
  1397. \end{verbatim}
  1398. \end{small}
  1399. \end{quote}
  1400.  
  1401. The file name extension \verb".240" refers to the resolution of my printer, 
  1402. resolution specified in the file \verb"epsonfx.mf". It may be different in your 
  1403. case. Finally, note that this extension also changes with the magstep used. For 
  1404. magstep~$5.0$, it becomes in my case $240 \times 1.2^{5.0} \approx 597$. 
  1405.  
  1406. Here is my batch file \verb"METAFONT.BAT":
  1407. \begin{quote}
  1408. \begin{small}%Don't put spaces after the next line!
  1409. \begin{verbatim}
  1410. MF &cm \mode:=epsonfx; \mag:=magstep(5.0); \input %1
  1411. FOR %%1 IN (kanji??.597) DO GFTOPK %%1
  1412. ERASE kanji??.597
  1413. ERASE kanji??.log
  1414. \end{verbatim}
  1415. \end{small}
  1416. \end{quote}
  1417.  
  1418. \subsection{The METAFONT Code}
  1419. \label{themetafontcode}
  1420.  
  1421. In this subsection, I will briefly go over the \MFT\ code produced by my 
  1422. program for a typical standard style font. This code can be crudely divided 
  1423. into four parts: 
  1424. \begin{itemize}
  1425.  \item Initial Header.
  1426.  \item Macro Definitions.
  1427.  \item Character Definitions.
  1428.  \item Final Header.
  1429. \end{itemize}
  1430.  
  1431. The header begins with the following command requesting memory usage statistics 
  1432. in the \verb".log" file produced along with each font by \MFT: 
  1433. \begin{quote}%Don't put spaces after the next line!
  1434. \begin{verbatim}
  1435. tracingstats:=1; 
  1436. \end{verbatim}
  1437. \end{quote} 
  1438.  
  1439. In proof mode, \MFT\ displays the characters in graphics mode provided it knows 
  1440. the resolution of your device. I use the following, which you may decide to 
  1441. change according to your hardware: 
  1442. \begin{quote}%Don't put spaces after the next line! 
  1443. \begin{verbatim}
  1444. screen_cols:=640; %VGA
  1445. screen_rows:=480; %VGA
  1446. \end{verbatim}
  1447. \end{quote}
  1448.  
  1449. The font design size, a fundamental unit of measurement, and character 
  1450. positioning are then supplied. I use the following for standard \JemTeX\ fonts: 
  1451. \begin{quote}%Don't put spaces after the next line!
  1452. \begin{verbatim}
  1453. font_size 10pt#;
  1454. u#:=12.7/36pt#;
  1455. body_height#:=23.25u#;
  1456. desc_depth#:=4.75u#;
  1457. \end{verbatim}
  1458. \end{quote}
  1459.  
  1460. Each underlying bitmap is $24u$~by~$24u$, and an empty border of $2u$ is left 
  1461. around every japanese characters. In a standard style, each character can 
  1462. extend vertically potentially by as much as $23.25u$ above its horizontal 
  1463. baseline, and $4.75u$ below it, for a total of $28u$. Note that these are the 
  1464. biggest values that can occur. In practice, the actual values are supplied for 
  1465. each character when they are defined. For a fixed height font, the actual 
  1466. values are always equal to these extreme values. Finally, the width is handled 
  1467. differently by \MFT\ since only the actual width needs to be specified for each 
  1468. character. 
  1469.  
  1470. At this point, a whole series of parameters is necessary for the Computer 
  1471. Modern base. The minimum set of them is set to~\verb"0pt" whenever possible. I 
  1472. solve the few occurring overflows by setting the right parameters 
  1473. to~\verb"1pt". None of these parameters appears useful since my japanese 
  1474. characters use only very primitive \MFT\ operators. But \MFT\ insists on all 
  1475. its parameters to be set anyway. 
  1476.  
  1477. \MFT\ is then initialized with:
  1478. \begin{quote}%Don't put spaces after the next line!
  1479. \begin{verbatim}
  1480. mode_setup;
  1481. font_setup;
  1482. \end{verbatim}
  1483. \end{quote}
  1484.  
  1485. The macros to be used in drawing the characters follow. Each dot making up the 
  1486. current bitmap lies in a square which I refer to by its lower left $z=(x,y)$ 
  1487. coordinates. I declare that variable $z$ with: 
  1488. \begin{quote}%Don't put spaces after the next line!
  1489. \begin{verbatim}
  1490. pair z;
  1491. \end{verbatim}
  1492. \end{quote}
  1493.  
  1494. A number of macros to draw squares, triangles, reverse triangles, and quarter 
  1495. circles are then included. All these have only one parameter; $z$. They are
  1496. illustrated in Figures~\ref{shortpatches} and~\ref{longpatches}.
  1497.  
  1498. \newpage %improve a bad page break
  1499.  
  1500. \begin{figure}[htb]
  1501.  \begin{center}
  1502.   \setlength{\unitlength}{0.38pt}
  1503.   \begin{picture}(900,900)
  1504.     \put(0,720){%
  1505.      \begin{picture}(180,180)
  1506.       \put(0,0){\dashbox{5}(180,180){}}
  1507.       \put(0,90){\framebox(90,90){}}
  1508.       \put(0,90){\makebox(90,90){sul}}
  1509.      \end{picture}}
  1510.     \put(240,720){%
  1511.      \begin{picture}(180,180)
  1512.       \put(0,0){\dashbox{5}(180,180){}}
  1513.       \put(90,90){\framebox(90,90){}}
  1514.       \put(90,90){\makebox(90,90){sur}}
  1515.      \end{picture}}
  1516.     \put(480,720){%
  1517.      \begin{picture}(180,180)
  1518.       \put(0,0){\dashbox{5}(180,180){}}
  1519.       \put(90,0){\framebox(90,90){}}
  1520.       \put(90,0){\makebox(90,90){sbr}}
  1521.      \end{picture}}
  1522.     \put(720,720){%
  1523.      \begin{picture}(180,180)
  1524.       \put(0,0){\dashbox{5}(180,180){}}
  1525.       \put(0,0){\framebox(90,90){}}
  1526.       \put(0,0){\makebox(90,90){sbl}}
  1527.      \end{picture}}
  1528.     \put(0,480){%
  1529.      \begin{picture}(180,180)
  1530.       \put(0,0){\dashbox{5}(180,180){}}
  1531.       \put(90,90){\line(-1,0){90}} 
  1532.       \put(90,90){\line(0,1){90}}
  1533.       \put(90.0,180.0){\circle*{1}}\put(88.7,180.0){\circle*{1}}
  1534.       \put(87.5,180.0){\circle*{1}}\put(86.2,179.9){\circle*{1}}
  1535.       \put(84.9,179.9){\circle*{1}}\put(83.6,179.8){\circle*{1}}
  1536.       \put(82.4,179.7){\circle*{1}}\put(81.1,179.6){\circle*{1}}
  1537.       \put(79.8,179.4){\circle*{1}}\put(78.5,179.3){\circle*{1}}
  1538.       \put(77.3,179.1){\circle*{1}}\put(76.0,178.9){\circle*{1}}
  1539.       \put(74.7,178.7){\circle*{1}}\put(73.5,178.5){\circle*{1}}
  1540.       \put(72.2,178.2){\circle*{1}}\put(70.9,178.0){\circle*{1}}
  1541.       \put(69.6,177.7){\circle*{1}}\put(68.4,177.4){\circle*{1}}
  1542.       \put(67.1,177.0){\circle*{1}}\put(65.8,176.7){\circle*{1}}
  1543.       \put(64.5,176.3){\circle*{1}}\put(63.3,175.9){\circle*{1}}
  1544.       \put(62.0,175.5){\circle*{1}}\put(60.7,175.1){\circle*{1}}
  1545.       \put(59.5,174.7){\circle*{1}}\put(58.2,174.2){\circle*{1}}
  1546.       \put(56.9,173.7){\circle*{1}}\put(55.6,173.2){\circle*{1}}
  1547.       \put(54.4,172.6){\circle*{1}}\put(53.1,172.1){\circle*{1}}
  1548.       \put(51.8,171.5){\circle*{1}}\put(50.5,170.9){\circle*{1}}
  1549.       \put(49.3,170.3){\circle*{1}}\put(48.0,169.6){\circle*{1}}
  1550.       \put(46.7,168.9){\circle*{1}}\put(45.5,168.2){\circle*{1}}
  1551.       \put(44.2,167.5){\circle*{1}}\put(42.9,166.7){\circle*{1}}
  1552.       \put(41.6,165.9){\circle*{1}}\put(40.4,165.1){\circle*{1}}
  1553.       \put(39.1,164.2){\circle*{1}}\put(37.8,163.3){\circle*{1}}
  1554.       \put(36.5,162.4){\circle*{1}}\put(35.3,161.4){\circle*{1}}
  1555.       \put(34.0,160.5){\circle*{1}}\put(32.7,159.4){\circle*{1}}
  1556.       \put(31.5,158.4){\circle*{1}}\put(30.2,157.2){\circle*{1}}
  1557.       \put(28.9,156.1){\circle*{1}}\put(27.6,154.9){\circle*{1}}
  1558.       \put(26.4,153.6){\circle*{1}}\put(0.0,90.0){\circle*{1}}
  1559.       \put(0.0,91.3){\circle*{1}}\put(0.0,92.5){\circle*{1}}
  1560.       \put(0.1,93.8){\circle*{1}}\put(0.1,95.1){\circle*{1}}
  1561.       \put(0.2,96.4){\circle*{1}}\put(0.3,97.6){\circle*{1}}
  1562.       \put(0.4,98.9){\circle*{1}}\put(0.6,100.2){\circle*{1}}
  1563.       \put(0.7,101.5){\circle*{1}}\put(0.9,102.7){\circle*{1}}
  1564.       \put(1.1,104.0){\circle*{1}}\put(1.3,105.3){\circle*{1}}
  1565.       \put(1.5,106.5){\circle*{1}}\put(1.8,107.8){\circle*{1}}
  1566.       \put(2.0,109.1){\circle*{1}}\put(2.3,110.4){\circle*{1}}
  1567.       \put(2.6,111.6){\circle*{1}}\put(3.0,112.9){\circle*{1}}
  1568.       \put(3.3,114.2){\circle*{1}}\put(3.7,115.5){\circle*{1}}
  1569.       \put(4.1,116.7){\circle*{1}}\put(4.5,118.0){\circle*{1}}
  1570.       \put(4.9,119.3){\circle*{1}}\put(5.3,120.5){\circle*{1}}
  1571.       \put(5.8,121.8){\circle*{1}}\put(6.3,123.1){\circle*{1}}
  1572.       \put(6.8,124.4){\circle*{1}}\put(7.4,125.6){\circle*{1}}
  1573.       \put(7.9,126.9){\circle*{1}}\put(8.5,128.2){\circle*{1}}
  1574.       \put(9.1,129.5){\circle*{1}}\put(9.7,130.7){\circle*{1}}
  1575.       \put(10.4,132.0){\circle*{1}}\put(11.1,133.3){\circle*{1}}
  1576.       \put(11.8,134.5){\circle*{1}}\put(12.5,135.8){\circle*{1}}
  1577.       \put(13.3,137.1){\circle*{1}}\put(14.1,138.4){\circle*{1}}
  1578.       \put(14.9,139.6){\circle*{1}}\put(15.8,140.9){\circle*{1}}
  1579.       \put(16.7,142.2){\circle*{1}}\put(17.6,143.5){\circle*{1}}
  1580.       \put(18.6,144.7){\circle*{1}}\put(19.5,146.0){\circle*{1}}
  1581.       \put(20.6,147.3){\circle*{1}}\put(21.6,148.5){\circle*{1}}
  1582.       \put(22.8,149.8){\circle*{1}}\put(23.9,151.1){\circle*{1}}
  1583.       \put(25.1,152.4){\circle*{1}}
  1584.       \put(30,90){\makebox(60,60){cul}}
  1585.      \end{picture}}
  1586.     \put(240,480){%
  1587.      \begin{picture}(180,180)
  1588.       \put(0,0){\dashbox{5}(180,180){}}
  1589.       \put(90,90){\line(1,0){90}}
  1590.       \put(90,90){\line(0,1){90}}
  1591.       \put(90.0,180.0){\circle*{1}}\put(91.3,180.0){\circle*{1}}
  1592.       \put(92.5,180.0){\circle*{1}}\put(93.8,179.9){\circle*{1}}
  1593.       \put(95.1,179.9){\circle*{1}}\put(96.4,179.8){\circle*{1}}
  1594.       \put(97.6,179.7){\circle*{1}}\put(98.9,179.6){\circle*{1}}
  1595.       \put(100.2,179.4){\circle*{1}}\put(101.5,179.3){\circle*{1}}
  1596.       \put(102.7,179.1){\circle*{1}}\put(104.0,178.9){\circle*{1}}
  1597.       \put(105.3,178.7){\circle*{1}}\put(106.5,178.5){\circle*{1}}
  1598.       \put(107.8,178.2){\circle*{1}}\put(109.1,178.0){\circle*{1}}
  1599.       \put(110.4,177.7){\circle*{1}}\put(111.6,177.4){\circle*{1}}
  1600.       \put(112.9,177.0){\circle*{1}}\put(114.2,176.7){\circle*{1}}
  1601.       \put(115.5,176.3){\circle*{1}}\put(116.7,175.9){\circle*{1}}
  1602.       \put(118.0,175.5){\circle*{1}}\put(119.3,175.1){\circle*{1}}
  1603.       \put(120.5,174.7){\circle*{1}}\put(121.8,174.2){\circle*{1}}
  1604.       \put(123.1,173.7){\circle*{1}}\put(124.4,173.2){\circle*{1}}
  1605.       \put(125.6,172.6){\circle*{1}}\put(126.9,172.1){\circle*{1}}
  1606.       \put(128.2,171.5){\circle*{1}}\put(129.5,170.9){\circle*{1}}
  1607.       \put(130.7,170.3){\circle*{1}}\put(132.0,169.6){\circle*{1}}
  1608.       \put(133.3,168.9){\circle*{1}}\put(134.5,168.2){\circle*{1}}
  1609.       \put(135.8,167.5){\circle*{1}}\put(137.1,166.7){\circle*{1}}
  1610.       \put(138.4,165.9){\circle*{1}}\put(139.6,165.1){\circle*{1}}
  1611.       \put(140.9,164.2){\circle*{1}}\put(142.2,163.3){\circle*{1}}
  1612.       \put(143.5,162.4){\circle*{1}}\put(144.7,161.4){\circle*{1}}
  1613.       \put(146.0,160.5){\circle*{1}}\put(147.3,159.4){\circle*{1}}
  1614.       \put(148.5,158.4){\circle*{1}}\put(149.8,157.2){\circle*{1}}
  1615.       \put(151.1,156.1){\circle*{1}}\put(152.4,154.9){\circle*{1}}
  1616.       \put(153.6,153.6){\circle*{1}}\put(180.0,90.0){\circle*{1}}
  1617.       \put(180.0,91.3){\circle*{1}}\put(180.0,92.5){\circle*{1}}
  1618.       \put(179.9,93.8){\circle*{1}}\put(179.9,95.1){\circle*{1}}
  1619.       \put(179.8,96.4){\circle*{1}}\put(179.7,97.6){\circle*{1}}
  1620.       \put(179.6,98.9){\circle*{1}}\put(179.4,100.2){\circle*{1}}
  1621.       \put(179.3,101.5){\circle*{1}}\put(179.1,102.7){\circle*{1}}
  1622.       \put(178.9,104.0){\circle*{1}}\put(178.7,105.3){\circle*{1}}
  1623.       \put(178.5,106.5){\circle*{1}}\put(178.2,107.8){\circle*{1}}
  1624.       \put(178.0,109.1){\circle*{1}}\put(177.7,110.4){\circle*{1}}
  1625.       \put(177.4,111.6){\circle*{1}}\put(177.0,112.9){\circle*{1}}
  1626.       \put(176.7,114.2){\circle*{1}}\put(176.3,115.5){\circle*{1}}
  1627.       \put(175.9,116.7){\circle*{1}}\put(175.5,118.0){\circle*{1}}
  1628.       \put(175.1,119.3){\circle*{1}}\put(174.7,120.5){\circle*{1}}
  1629.       \put(174.2,121.8){\circle*{1}}\put(173.7,123.1){\circle*{1}}
  1630.       \put(173.2,124.4){\circle*{1}}\put(172.6,125.6){\circle*{1}}
  1631.       \put(172.1,126.9){\circle*{1}}\put(171.5,128.2){\circle*{1}}
  1632.       \put(170.9,129.5){\circle*{1}}\put(170.3,130.7){\circle*{1}}
  1633.       \put(169.6,132.0){\circle*{1}}\put(168.9,133.3){\circle*{1}}
  1634.       \put(168.2,134.5){\circle*{1}}\put(167.5,135.8){\circle*{1}}
  1635.       \put(166.7,137.1){\circle*{1}}\put(165.9,138.4){\circle*{1}}
  1636.       \put(165.1,139.6){\circle*{1}}\put(164.2,140.9){\circle*{1}}
  1637.       \put(163.3,142.2){\circle*{1}}\put(162.4,143.5){\circle*{1}}
  1638.       \put(161.4,144.7){\circle*{1}}\put(160.5,146.0){\circle*{1}}
  1639.       \put(159.4,147.3){\circle*{1}}\put(158.4,148.5){\circle*{1}}
  1640.       \put(157.2,149.8){\circle*{1}}\put(156.1,151.1){\circle*{1}}
  1641.       \put(154.9,152.4){\circle*{1}}
  1642.       \put(90,90){\makebox(60,60){cur}}
  1643.      \end{picture}}
  1644.     \put(480,480){%
  1645.      \begin{picture}(180,180)
  1646.       \put(0,0){\dashbox{5}(180,180){}}
  1647.       \put(90,90){\line(1,0){90}}
  1648.       \put(90,90){\line(0,-1){90}}
  1649.       \put(90.0,0.0){\circle*{1}}\put(91.3,0.0){\circle*{1}}
  1650.       \put(92.5,0.0){\circle*{1}}\put(93.8,0.1){\circle*{1}}
  1651.       \put(95.1,0.1){\circle*{1}}\put(96.4,0.2){\circle*{1}}
  1652.       \put(97.6,0.3){\circle*{1}}\put(98.9,0.4){\circle*{1}}
  1653.       \put(100.2,0.6){\circle*{1}}\put(101.5,0.7){\circle*{1}}
  1654.       \put(102.7,0.9){\circle*{1}}\put(104.0,1.1){\circle*{1}}
  1655.       \put(105.3,1.3){\circle*{1}}\put(106.5,1.5){\circle*{1}}
  1656.       \put(107.8,1.8){\circle*{1}}\put(109.1,2.0){\circle*{1}}
  1657.       \put(110.4,2.3){\circle*{1}}\put(111.6,2.6){\circle*{1}}
  1658.       \put(112.9,3.0){\circle*{1}}\put(114.2,3.3){\circle*{1}}
  1659.       \put(115.5,3.7){\circle*{1}}\put(116.7,4.1){\circle*{1}}
  1660.       \put(118.0,4.5){\circle*{1}}\put(119.3,4.9){\circle*{1}}
  1661.       \put(120.5,5.3){\circle*{1}}\put(121.8,5.8){\circle*{1}}
  1662.       \put(123.1,6.3){\circle*{1}}\put(124.4,6.8){\circle*{1}}
  1663.       \put(125.6,7.4){\circle*{1}}\put(126.9,7.9){\circle*{1}}
  1664.       \put(128.2,8.5){\circle*{1}}\put(129.5,9.1){\circle*{1}}
  1665.       \put(130.7,9.7){\circle*{1}}\put(132.0,10.4){\circle*{1}}
  1666.       \put(133.3,11.1){\circle*{1}}\put(134.5,11.8){\circle*{1}}
  1667.       \put(135.8,12.5){\circle*{1}}\put(137.1,13.3){\circle*{1}}
  1668.       \put(138.4,14.1){\circle*{1}}\put(139.6,14.9){\circle*{1}}
  1669.       \put(140.9,15.8){\circle*{1}}\put(142.2,16.7){\circle*{1}}
  1670.       \put(143.5,17.6){\circle*{1}}\put(144.7,18.6){\circle*{1}}
  1671.       \put(146.0,19.5){\circle*{1}}\put(147.3,20.6){\circle*{1}}
  1672.       \put(148.5,21.6){\circle*{1}}\put(149.8,22.8){\circle*{1}}
  1673.       \put(151.1,23.9){\circle*{1}}\put(152.4,25.1){\circle*{1}}
  1674.       \put(153.6,26.4){\circle*{1}}\put(180.0,90.0){\circle*{1}}
  1675.       \put(180.0,88.7){\circle*{1}}\put(180.0,87.5){\circle*{1}}
  1676.       \put(179.9,86.2){\circle*{1}}\put(179.9,84.9){\circle*{1}}
  1677.       \put(179.8,83.6){\circle*{1}}\put(179.7,82.4){\circle*{1}}
  1678.       \put(179.6,81.1){\circle*{1}}\put(179.4,79.8){\circle*{1}}
  1679.       \put(179.3,78.5){\circle*{1}}\put(179.1,77.3){\circle*{1}}
  1680.       \put(178.9,76.0){\circle*{1}}\put(178.7,74.7){\circle*{1}}
  1681.       \put(178.5,73.5){\circle*{1}}\put(178.2,72.2){\circle*{1}}
  1682.       \put(178.0,70.9){\circle*{1}}\put(177.7,69.6){\circle*{1}}
  1683.       \put(177.4,68.4){\circle*{1}}\put(177.0,67.1){\circle*{1}}
  1684.       \put(176.7,65.8){\circle*{1}}\put(176.3,64.5){\circle*{1}}
  1685.       \put(175.9,63.3){\circle*{1}}\put(175.5,62.0){\circle*{1}}
  1686.       \put(175.1,60.7){\circle*{1}}\put(174.7,59.5){\circle*{1}}
  1687.       \put(174.2,58.2){\circle*{1}}\put(173.7,56.9){\circle*{1}}
  1688.       \put(173.2,55.6){\circle*{1}}\put(172.6,54.4){\circle*{1}}
  1689.       \put(172.1,53.1){\circle*{1}}\put(171.5,51.8){\circle*{1}}
  1690.       \put(170.9,50.5){\circle*{1}}\put(170.3,49.3){\circle*{1}}
  1691.       \put(169.6,48.0){\circle*{1}}\put(168.9,46.7){\circle*{1}}
  1692.       \put(168.2,45.5){\circle*{1}}\put(167.5,44.2){\circle*{1}}
  1693.       \put(166.7,42.9){\circle*{1}}\put(165.9,41.6){\circle*{1}}
  1694.       \put(165.1,40.4){\circle*{1}}\put(164.2,39.1){\circle*{1}}
  1695.       \put(163.3,37.8){\circle*{1}}\put(162.4,36.5){\circle*{1}}
  1696.       \put(161.4,35.3){\circle*{1}}\put(160.5,34.0){\circle*{1}}
  1697.       \put(159.4,32.7){\circle*{1}}\put(158.4,31.5){\circle*{1}}
  1698.       \put(157.2,30.2){\circle*{1}}\put(156.1,28.9){\circle*{1}}
  1699.       \put(154.9,27.6){\circle*{1}}
  1700.       \put(90,30){\makebox(60,60){cbr}}
  1701.      \end{picture}}
  1702.     \put(720,480){%
  1703.      \begin{picture}(180,180)
  1704.       \put(0,0){\dashbox{5}(180,180){}}
  1705.       \put(90,90){\line(-1,0){90}}
  1706.       \put(90,90){\line(0,-1){90}}
  1707.       \put(90.0,0.0){\circle*{1}}\put(88.7,0.0){\circle*{1}}
  1708.       \put(87.5,0.0){\circle*{1}}\put(86.2,0.1){\circle*{1}}
  1709.       \put(84.9,0.1){\circle*{1}}\put(83.6,0.2){\circle*{1}}
  1710.       \put(82.4,0.3){\circle*{1}}\put(81.1,0.4){\circle*{1}}
  1711.       \put(79.8,0.6){\circle*{1}}\put(78.5,0.7){\circle*{1}}
  1712.       \put(77.3,0.9){\circle*{1}}\put(76.0,1.1){\circle*{1}}
  1713.       \put(74.7,1.3){\circle*{1}}\put(73.5,1.5){\circle*{1}}
  1714.       \put(72.2,1.8){\circle*{1}}\put(70.9,2.0){\circle*{1}}
  1715.       \put(69.6,2.3){\circle*{1}}\put(68.4,2.6){\circle*{1}}
  1716.       \put(67.1,3.0){\circle*{1}}\put(65.8,3.3){\circle*{1}}
  1717.       \put(64.5,3.7){\circle*{1}}\put(63.3,4.1){\circle*{1}}
  1718.       \put(62.0,4.5){\circle*{1}}\put(60.7,4.9){\circle*{1}}
  1719.       \put(59.5,5.3){\circle*{1}}\put(58.2,5.8){\circle*{1}}
  1720.       \put(56.9,6.3){\circle*{1}}\put(55.6,6.8){\circle*{1}}
  1721.       \put(54.4,7.4){\circle*{1}}\put(53.1,7.9){\circle*{1}}
  1722.       \put(51.8,8.5){\circle*{1}}\put(50.5,9.1){\circle*{1}}
  1723.       \put(49.3,9.7){\circle*{1}}\put(48.0,10.4){\circle*{1}}
  1724.       \put(46.7,11.1){\circle*{1}}\put(45.5,11.8){\circle*{1}}
  1725.       \put(44.2,12.5){\circle*{1}}\put(42.9,13.3){\circle*{1}}
  1726.       \put(41.6,14.1){\circle*{1}}\put(40.4,14.9){\circle*{1}}
  1727.       \put(39.1,15.8){\circle*{1}}\put(37.8,16.7){\circle*{1}}
  1728.       \put(36.5,17.6){\circle*{1}}\put(35.3,18.6){\circle*{1}}
  1729.       \put(34.0,19.5){\circle*{1}}\put(32.7,20.6){\circle*{1}}
  1730.       \put(31.5,21.6){\circle*{1}}\put(30.2,22.8){\circle*{1}}
  1731.       \put(28.9,23.9){\circle*{1}}\put(27.6,25.1){\circle*{1}}
  1732.       \put(26.4,26.4){\circle*{1}}\put(0.0,90.0){\circle*{1}}
  1733.       \put(0.0,88.7){\circle*{1}}\put(0.0,87.5){\circle*{1}}
  1734.       \put(0.1,86.2){\circle*{1}}\put(0.1,84.9){\circle*{1}}
  1735.       \put(0.2,83.6){\circle*{1}}\put(0.3,82.4){\circle*{1}}
  1736.       \put(0.4,81.1){\circle*{1}}\put(0.6,79.8){\circle*{1}}
  1737.       \put(0.7,78.5){\circle*{1}}\put(0.9,77.3){\circle*{1}}
  1738.       \put(1.1,76.0){\circle*{1}}\put(1.3,74.7){\circle*{1}}
  1739.       \put(1.5,73.5){\circle*{1}}\put(1.8,72.2){\circle*{1}}
  1740.       \put(2.0,70.9){\circle*{1}}\put(2.3,69.6){\circle*{1}}
  1741.       \put(2.6,68.4){\circle*{1}}\put(3.0,67.1){\circle*{1}}
  1742.       \put(3.3,65.8){\circle*{1}}\put(3.7,64.5){\circle*{1}}
  1743.       \put(4.1,63.3){\circle*{1}}\put(4.5,62.0){\circle*{1}}
  1744.       \put(4.9,60.7){\circle*{1}}\put(5.3,59.5){\circle*{1}}
  1745.       \put(5.8,58.2){\circle*{1}}\put(6.3,56.9){\circle*{1}}
  1746.       \put(6.8,55.6){\circle*{1}}\put(7.4,54.4){\circle*{1}}
  1747.       \put(7.9,53.1){\circle*{1}}\put(8.5,51.8){\circle*{1}}
  1748.       \put(9.1,50.5){\circle*{1}}\put(9.7,49.3){\circle*{1}}
  1749.       \put(10.4,48.0){\circle*{1}}\put(11.1,46.7){\circle*{1}}
  1750.       \put(11.8,45.5){\circle*{1}}\put(12.5,44.2){\circle*{1}}
  1751.       \put(13.3,42.9){\circle*{1}}\put(14.1,41.6){\circle*{1}}
  1752.       \put(14.9,40.4){\circle*{1}}\put(15.8,39.1){\circle*{1}}
  1753.       \put(16.7,37.8){\circle*{1}}\put(17.6,36.5){\circle*{1}}
  1754.       \put(18.6,35.3){\circle*{1}}\put(19.5,34.0){\circle*{1}}
  1755.       \put(20.6,32.7){\circle*{1}}\put(21.6,31.5){\circle*{1}}
  1756.       \put(22.8,30.2){\circle*{1}}\put(23.9,28.9){\circle*{1}}
  1757.       \put(25.1,27.6){\circle*{1}}
  1758.       \put(30,30){\makebox(60,60){cbl}}
  1759.      \end{picture}}
  1760.     \put(0,240){%
  1761.      \begin{picture}(180,180)
  1762.       \put(0,0){\dashbox{5}(180,180){}}
  1763.       \put(90,90){\line(-1,0){90}} 
  1764.       \put(90,90){\line(0,1){90}}
  1765.       \put(0,90){\line(1,1){90}}
  1766.       \put(45,90){\makebox(45,45){tul}}
  1767.      \end{picture}}
  1768.     \put(240,240){%
  1769.      \begin{picture}(180,180)
  1770.       \put(0,0){\dashbox{5}(180,180){}}
  1771.       \put(90,90){\line(1,0){90}}
  1772.       \put(90,90){\line(0,1){90}}
  1773.       \put(90,180){\line(1,-1){90}}
  1774.       \put(90,90){\makebox(45,45){tur}}
  1775.      \end{picture}}
  1776.     \put(480,240){%
  1777.      \begin{picture}(180,180)
  1778.       \put(0,0){\dashbox{5}(180,180){}}
  1779.       \put(90,90){\line(1,0){90}}
  1780.       \put(90,90){\line(0,-1){90}}
  1781.       \put(90,0){\line(1,1){90}}
  1782.       \put(90,45){\makebox(45,45){tbr}}
  1783.      \end{picture}}
  1784.     \put(720,240){%
  1785.      \begin{picture}(180,180)
  1786.       \put(0,0){\dashbox{5}(180,180){}}
  1787.       \put(90,90){\line(-1,0){90}}
  1788.       \put(90,90){\line(0,-1){90}}
  1789.       \put(0,90){\line(1,-1){90}}
  1790.       \put(45,45){\makebox(45,45){tbl}}
  1791.      \end{picture}}
  1792.     \put(0,0){%
  1793.      \begin{picture}(180,180)
  1794.       \put(0,0){\dashbox{5}(180,180){}}
  1795.       \put(0,180){\line(1,0){90}}
  1796.       \put(0,90){\line(0,1){90}}
  1797.       \put(0,90){\line(1,1){90}}
  1798.       \put(0,135){\makebox(45,45){rul}}
  1799.      \end{picture}}
  1800.     \put(240,0){%
  1801.      \begin{picture}(180,180)
  1802.       \put(0,0){\dashbox{5}(180,180){}}
  1803.       \put(90,180){\line(1,0){90}}
  1804.       \put(180,90){\line(0,1){90}}
  1805.       \put(90,180){\line(1,-1){90}}
  1806.       \put(135,135){\makebox(45,45){rur}}
  1807.      \end{picture}}
  1808.     \put(480,0){%
  1809.      \begin{picture}(180,180)
  1810.       \put(0,0){\dashbox{5}(180,180){}}
  1811.       \put(90,0){\line(1,0){90}}
  1812.       \put(180,0){\line(0,1){90}}
  1813.       \put(90,0){\line(1,1){90}}
  1814.       \put(135,0){\makebox(45,45){rbr}}
  1815.      \end{picture}}
  1816.     \put(720,0){%
  1817.      \begin{picture}(180,180)
  1818.       \put(0,0){\dashbox{5}(180,180){}}
  1819.       \put(0,0){\line(1,0){90}}
  1820.       \put(0,0){\line(0,1){90}}
  1821.       \put(0,90){\line(1,-1){90}}
  1822.       \put(0,0){\makebox(45,45){rbl}}
  1823.      \end{picture}}
  1824.   \end{picture}
  1825.  \end{center}
  1826.  \caption{Short Patches.}
  1827.  \label{shortpatches}
  1828. \end{figure}
  1829.  
  1830. The definitions of each japanese character follow sequentially. The template 
  1831. for such a definition is:
  1832. \begin{quote}
  1833. \tt beginchar(0,\em width \tt\#,\em body\_height \tt\#,\em desc\_depth \tt\#);\\
  1834. \verb"normal_adjust_fit(2u#,2u#);"\\
  1835. $\vdots$\\
  1836. \verb"endchar;"
  1837. \end{quote}
  1838.  
  1839. \newpage %improve a bad page break
  1840.  
  1841. \begin{figure}[htb]
  1842.  \begin{center}
  1843.   \setlength{\unitlength}{0.38pt}
  1844.   \begin{picture}(900,900)
  1845.     \put(0,720){%
  1846.      \begin{picture}(180,180)
  1847.       \put(0,0){\dashbox{5}(180,180){}}
  1848.       \put(0,90){\line(1,0){180}}
  1849.       \put(180,90){\line(0,1){90}}
  1850.       \put(0,90){\line(2,1){180}}
  1851.       \put(90,90){\makebox(90,45){tuul}}
  1852.      \end{picture}}
  1853.     \put(240,720){%
  1854.      \begin{picture}(180,180)
  1855.       \put(0,0){\dashbox{5}(180,180){}}
  1856.       \put(90,0){\line(0,1){180}}
  1857.       \put(0,0){\line(1,0){90}}
  1858.       \put(0,0){\line(1,2){90}}
  1859.       \put(30,0){\makebox(60,60){tull}}
  1860.      \end{picture}}
  1861.     \put(480,720){%
  1862.      \begin{picture}(180,180)
  1863.       \put(0,0){\dashbox{5}(180,180){}}
  1864.       \put(0,90){\line(1,0){180}}
  1865.       \put(0,90){\line(0,1){90}}
  1866.       \put(0,180){\line(2,-1){180}}
  1867.       \put(0,90){\makebox(90,45){tuur}}
  1868.      \end{picture}}
  1869.     \put(720,720){%
  1870.      \begin{picture}(180,180)
  1871.       \put(0,0){\dashbox{5}(180,180){}}
  1872.       \put(90,0){\line(0,1){180}}
  1873.       \put(90,0){\line(1,0){90}}
  1874.       \put(90,180){\line(1,-2){90}}
  1875.       \put(90,0){\makebox(60,60){turr}}
  1876.      \end{picture}}
  1877.     \put(0,480){%
  1878.      \begin{picture}(180,180)
  1879.       \put(0,0){\dashbox{5}(180,180){}}
  1880.       \put(0,90){\line(1,0){180}}
  1881.       \put(0,0){\line(0,1){90}}
  1882.       \put(0,0){\line(2,1){180}}
  1883.       \put(0,45){\makebox(90,45){tbbr}}
  1884.      \end{picture}}
  1885.     \put(240,480){%
  1886.      \begin{picture}(180,180)
  1887.       \put(0,0){\dashbox{5}(180,180){}}
  1888.       \put(90,0){\line(0,1){180}}
  1889.       \put(90,180){\line(1,0){90}}
  1890.       \put(90,0){\line(1,2){90}}
  1891.       \put(90,120){\makebox(60,60){tbrr}}
  1892.      \end{picture}}
  1893.     \put(480,480){%
  1894.      \begin{picture}(180,180)
  1895.       \put(0,0){\dashbox{5}(180,180){}}
  1896.       \put(0,90){\line(1,0){180}}
  1897.       \put(180,0){\line(0,1){90}}
  1898.       \put(0,90){\line(2,-1){180}}
  1899.       \put(90,45){\makebox(90,45){tbbl}}
  1900.      \end{picture}}
  1901.     \put(720,480){%
  1902.      \begin{picture}(180,180)
  1903.       \put(0,0){\dashbox{5}(180,180){}}
  1904.       \put(90,0){\line(0,1){180}}
  1905.       \put(0,180){\line(1,0){90}}
  1906.       \put(0,180){\line(1,-2){90}}
  1907.       \put(30,120){\makebox(60,60){tbll}}
  1908.      \end{picture}}
  1909.     \put(0,240){%
  1910.      \begin{picture}(180,180)
  1911.       \put(0,0){\dashbox{5}(180,180){}}
  1912.       \put(0,0){\line(0,1){180}}
  1913.       \put(0,180){\line(1,0){90}}
  1914.       \put(0,0){\line(1,2){90}}
  1915.       \put(0,120){\makebox(60,60){ruul}}
  1916.      \end{picture}}
  1917.     \put(240,240){%
  1918.      \begin{picture}(180,180)
  1919.       \put(0,0){\dashbox{5}(180,180){}}
  1920.       \put(0,180){\line(1,0){180}}
  1921.       \put(0,90){\line(0,1){90}}
  1922.       \put(0,90){\line(2,1){180}}
  1923.       \put(0,135){\makebox(90,45){rull}}
  1924.      \end{picture}}
  1925.     \put(480,240){%
  1926.      \begin{picture}(180,180)
  1927.       \put(0,0){\dashbox{5}(180,180){}}
  1928.       \put(180,0){\line(0,1){180}}
  1929.       \put(90,180){\line(1,0){90}}
  1930.       \put(90,180){\line(1,-2){90}}
  1931.       \put(120,120){\makebox(60,60){ruur}}
  1932.      \end{picture}}
  1933.     \put(720,240){%
  1934.      \begin{picture}(180,180)
  1935.       \put(0,0){\dashbox{5}(180,180){}}
  1936.       \put(0,180){\line(1,0){180}}
  1937.       \put(180,90){\line(0,1){90}}
  1938.       \put(0,180){\line(2,-1){180}}
  1939.       \put(90,135){\makebox(90,45){rurr}}
  1940.      \end{picture}}
  1941.     \put(0,0){%
  1942.      \begin{picture}(180,180)
  1943.       \put(0,0){\dashbox{5}(180,180){}}
  1944.       \put(180,0){\line(0,1){180}}
  1945.       \put(90,0){\line(1,0){90}}
  1946.       \put(90,0){\line(1,2){90}}
  1947.       \put(120,0){\makebox(60,60){rbbr}}
  1948.      \end{picture}}
  1949.     \put(240,0){%
  1950.      \begin{picture}(180,180)
  1951.       \put(0,0){\dashbox{5}(180,180){}}
  1952.       \put(0,0){\line(1,0){180}}
  1953.       \put(180,0){\line(0,1){90}}
  1954.       \put(0,0){\line(2,1){180}}
  1955.       \put(90,0){\makebox(90,45){rbrr}}
  1956.      \end{picture}}
  1957.     \put(480,0){%
  1958.      \begin{picture}(180,180)
  1959.       \put(0,0){\dashbox{5}(180,180){}}
  1960.       \put(0,0){\line(0,1){180}}
  1961.       \put(0,0){\line(1,0){90}}
  1962.       \put(0,180){\line(1,-2){90}}
  1963.       \put(0,0){\makebox(60,60){rbbl}}
  1964.      \end{picture}}
  1965.     \put(720,0){%
  1966.      \begin{picture}(180,180)
  1967.       \put(0,0){\dashbox{5}(180,180){}}
  1968.       \put(0,0){\line(1,0){180}}
  1969.       \put(0,0){\line(0,1){90}}
  1970.       \put(0,90){\line(2,-1){180}}
  1971.       \put(0,0){\makebox(90,45){rbll}}
  1972.      \end{picture}}
  1973.   \end{picture}
  1974.  \end{center}
  1975.  \caption{Long Patches.}
  1976.  \label{longpatches}
  1977. \end{figure}
  1978.  
  1979. All sizes are given in terms of the fundamental unit of measurement $u$. The 
  1980. quantities {\em body\_height\/} and {\em desc\_depth\/} must include the border 
  1981. which is $2u$ thick. However, {\em width\/} does not need to include this 
  1982. border because the statement \verb"normal_adjust_fit" is equivalent to it 
  1983. horizontally. \MFT\ is somewhat more flexible in the horizontal direction by 
  1984. design and intent. The body of a character definition is simply a series of 
  1985. macro calls. Each line contains the macros for a given pixel in the bitmap. 
  1986. Consequently, each line is reasonably short.
  1987.  
  1988. \newpage %improve a bad page break
  1989.  
  1990. The \MFT\ code ends with a final header containing a few pieces of information 
  1991. for the \TeX\ Font Metric (\verb".tfm") files. The following are the most 
  1992. interesting items: 
  1993. \begin{quote}%Don't put spaces after the next line!
  1994. \begin{verbatim}
  1995. font_normal_space 8u#;
  1996. font_normal_stretch 4u#;
  1997. font_normal_shrink 3u#;
  1998. font_x_height 24u#; %ex
  1999. font_quad 24u#; %em
  2000. \end{verbatim}
  2001. \end{quote}
  2002.  
  2003. I set the normal inter-word spacing to a third of the maximum width of a 
  2004. character. This seems comparable to the scheme used in several Computer Modern 
  2005. fonts. Stretching and shrinking are set to values also comparable to what is
  2006. used elsewhere. I set the typical character height and width to the maximum 
  2007. size of a bitmap. 
  2008.  
  2009. \subsection{Algorithm}
  2010. \label{algorithm}
  2011.  
  2012. Given a bitmap, it is straightforward to determine its width and height, either 
  2013. fixed or minimized, while making sure that the vertical relationship with the 
  2014. horizontal baseline is respected. The bulk of the problem lies in determining 
  2015. the proper combination of squares, triangles, and quarter circles to be used. 
  2016. This subsection describes an algorithm developed jointly by Mr. Masatoshi 
  2017. Watanabe and me. I find that it produces good enough results for my need. But 
  2018. perhaps somebody will not share my opinion, and in that case, the following 
  2019. will no doubt prove helpful. 
  2020.  
  2021. The current bitmap is read into a 24~by~24 array of boolean variables. In what 
  2022. follows, I will say that a cell is {\em active\/} if the bitmap dictates that a 
  2023. dot should lie in it, otherwise it is {\em inactive}. Each cell is subdivided 
  2024. in four, and each subcell is examined with respect to the neighboring cells. 
  2025. The current algorithm is very local in that only neighboring cells in direct 
  2026. contact with the current cell are examined. A more global algorithm should 
  2027. perform better and that is certainly an area worth investigating for future 
  2028. releases.
  2029.  
  2030. From now on, I will concentrate on the upper left subcell. The other three 
  2031. subcells are handled in a similar fashion. In the following diagrams, a 
  2032. $\bullet$ indicates an active cell and a $\times$ indicates an inactive cell. 
  2033. Unlabeled neighboring cells are simply irrelevant.
  2034.  
  2035. The simplest case occurs when the current cell is inactive. Although the center 
  2036. of that cell should remain empty, it is possible to use its border to smooth a 
  2037. nearby painted area. The algorithm always tries to use long shapes first, 
  2038. before falling back to shorter shapes. 
  2039.  
  2040. First, the following cases clearly require that the upper left subcell not 
  2041. be painted: 
  2042. \begin{center}
  2043.  \setlength{\unitlength}{0.4pt}
  2044.  \begin{picture}(660,180)
  2045.   \put(0,0){%
  2046.    \begin{picture}(180,180)
  2047.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2048.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2049.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2050.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2051.     \put(0,120){\makebox(60,60){\Huge$\bullet$}}
  2052.     \put(60,0){\makebox(60,60){\Huge$\times$}}
  2053.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2054.     \put(60,90){\makebox(30,30){\large$\times$}}
  2055.    \end{picture}}
  2056.   \put(240,0){%
  2057.    \begin{picture}(180,180)
  2058.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2059.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2060.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2061.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2062.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2063.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2064.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2065.     \put(60,90){\makebox(30,30){\large$\times$}}
  2066.    \end{picture}}
  2067.   \put(480,0){%
  2068.    \begin{picture}(180,180)
  2069.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2070.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2071.     \put(0,120){\makebox(60,60){\Huge$\bullet$}}
  2072.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2073.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2074.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2075.     \put(120,60){\makebox(60,60){\Huge$\times$}}
  2076.     \put(60,90){\makebox(30,30){\large$\times$}}
  2077.    \end{picture}}
  2078.  \end{picture}
  2079. \end{center}
  2080.  
  2081. These three cases require reverse triangles involving the upper left subcell:
  2082. \begin{center}
  2083.  \setlength{\unitlength}{0.4pt}
  2084.  \begin{picture}(660,180)
  2085.   \put(0,0){%
  2086.    \begin{picture}(180,180)
  2087.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2088.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2089.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2090.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2091.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2092.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2093.     \put(60,60){\line(0,1){60}}
  2094.     \put(60,120){\line(1,0){30}}
  2095.     \put(60,60){\line(1,2){30}}
  2096.    \end{picture}}
  2097.   \put(240,0){%
  2098.    \begin{picture}(180,180)
  2099.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2100.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2101.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2102.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2103.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2104.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2105.     \put(60,120){\line(1,0){60}}
  2106.     \put(60,90){\line(0,1){30}}
  2107.     \put(60,90){\line(2,1){60}}
  2108.    \end{picture}}
  2109.   \put(480,0){%
  2110.    \begin{picture}(180,180)
  2111.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2112.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2113.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2114.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2115.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2116.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2117.     \put(60,120){\line(1,0){30}}
  2118.     \put(60,90){\line(0,1){30}}
  2119.     \put(60,90){\line(1,1){30}}
  2120.    \end{picture}}
  2121.  \end{picture}
  2122. \end{center}
  2123.  
  2124. There are two possible ways of handling the remaining case:
  2125. \begin{center}
  2126.  \setlength{\unitlength}{0.4pt}
  2127.  \begin{picture}(420,180)
  2128.   \put(0,0){%
  2129.    \begin{picture}(180,180)
  2130.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2131.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2132.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2133.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2134.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2135.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2136.     \put(60,90){\makebox(30,30){\large$\times$}}
  2137.    \end{picture}}
  2138.   \put(240,0){%
  2139.    \begin{picture}(180,180)
  2140.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2141.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2142.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2143.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2144.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2145.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2146.     \put(60,120){\line(1,0){30}}
  2147.     \put(60,90){\line(0,1){30}}
  2148.     \put(60,90){\line(1,1){30}}
  2149.    \end{picture}}
  2150.  \end{picture}
  2151. \end{center}
  2152.  
  2153. The technique on the left has the advantage of producing clean crossings of 
  2154. $+$ strokes, but experimentation shows that it often yields bad crossings of 
  2155. $\times$ strokes. The technique on the right produces good crossings of 
  2156. $\times$ strokes, but it also generates crossings of $+$ strokes with 
  2157. unnecessarily round corners. I examined both alternatives with \MFT\ in proof 
  2158. mode, and I found that it is preferable to have characters occasionally 
  2159. slightly too smooth, rather than sharp ones occasionally rough. Therefore, the 
  2160. approach on the right is the one used in \verb"JIS2MF". 
  2161.  
  2162. \newpage %improve a bad page break
  2163.  
  2164. The most complex situation occurs when the center cell is active. Each of its 
  2165. subcells will be filled by a square, a triangle, or a quarter circle. No 
  2166. reverse triangle is used in such instances since I insist that the interior of 
  2167. the cell be filled. As always, long triangles are tried first. The possible 
  2168. four cases involving the upper left subcell are:
  2169. \begin{center}
  2170.  \setlength{\unitlength}{0.4pt}
  2171.  \begin{picture}(900,180)
  2172.   \put(0,0){%
  2173.    \begin{picture}(180,180)
  2174.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2175.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2176.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2177.     \put(120,60){\makebox(60,60){\Huge$\bullet$}}
  2178.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2179.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2180.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2181.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2182.     \put(60,90){\line(1,0){60}}
  2183.     \put(120,90){\line(0,1){30}}
  2184.     \put(60,90){\line(2,1){60}}
  2185.    \end{picture}}
  2186.   \put(240,0){%
  2187.    \begin{picture}(180,180)
  2188.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2189.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2190.     \put(60,0){\makebox(60,60){\Huge$\bullet$}}
  2191.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2192.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2193.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2194.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2195.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2196.     \put(90,60){\line(0,1){60}}
  2197.     \put(60,60){\line(1,0){30}}
  2198.     \put(60,60){\line(1,2){30}}
  2199.    \end{picture}}
  2200.   \put(480,0){%
  2201.    \begin{picture}(180,180)
  2202.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2203.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2204.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2205.     \put(120,0){\makebox(60,60){\Huge$\bullet$}}
  2206.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2207.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2208.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2209.     \put(120,60){\makebox(60,60){\Huge$\times$}}
  2210.     \put(60,90){\line(1,0){60}}
  2211.     \put(60,90){\line(0,1){30}}
  2212.     \put(60,120){\line(2,-1){60}}
  2213.    \end{picture}}
  2214.   \put(720,0){%
  2215.    \begin{picture}(180,180)
  2216.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2217.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2218.     \put(120,0){\makebox(60,60){\Huge$\bullet$}}
  2219.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2220.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2221.     \put(60,0){\makebox(60,60){\Huge$\times$}}
  2222.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2223.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2224.     \put(90,60){\line(0,1){60}}
  2225.     \put(60,120){\line(1,0){30}}
  2226.     \put(60,120){\line(1,-2){30}}
  2227.    \end{picture}}
  2228.  \end{picture}
  2229. \end{center}
  2230.  
  2231. If none of these cases can be applied, the following three cases are tried out:
  2232. \begin{center}
  2233.  \setlength{\unitlength}{0.4pt}
  2234.  \begin{picture}(660,180)
  2235.   \put(0,0){%
  2236.    \begin{picture}(180,180)
  2237.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2238.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2239.     \put(0,60){\makebox(60,60){\Huge$\bullet$}}
  2240.     \put(60,90){\framebox(30,30){}}
  2241.    \end{picture}}
  2242.   \put(240,0){%
  2243.    \begin{picture}(180,180)
  2244.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2245.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2246.     \put(0,120){\makebox(60,60){\Huge$\bullet$}}
  2247.     \put(60,90){\framebox(30,30){}}
  2248.    \end{picture}}
  2249.   \put(480,0){%
  2250.    \begin{picture}(180,180)
  2251.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2252.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2253.     \put(60,120){\makebox(60,60){\Huge$\bullet$}}
  2254.     \put(60,90){\framebox(30,30){}}
  2255.    \end{picture}}
  2256.  \end{picture}
  2257. \end{center}
  2258.  
  2259. If neither of these is relevant, I always resort to one of these three final 
  2260. cases:
  2261. \begin{center}
  2262.  \setlength{\unitlength}{0.4pt}
  2263.  \begin{picture}(660,180)
  2264.   \put(0,0){%
  2265.    \begin{picture}(180,180)
  2266.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2267.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2268.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2269.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2270.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2271.     \put(120,120){\makebox(60,60){\Huge$\bullet$}}
  2272.     \put(90,90){\line(-1,0){30}}
  2273.     \put(90,90){\line(0,1){30}}
  2274.     \put(60,90){\line(1,1){30}}
  2275.    \end{picture}}
  2276.   \put(240,0){%
  2277.    \begin{picture}(180,180)
  2278.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2279.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2280.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2281.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2282.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2283.     \put(0,0){\makebox(60,60){\Huge$\bullet$}}
  2284.     \put(90,90){\line(-1,0){30}}
  2285.     \put(90,90){\line(0,1){30}}
  2286.     \put(60,90){\line(1,1){30}}
  2287.    \end{picture}}
  2288.   \put(480,0){%
  2289.    \begin{picture}(180,180)
  2290.     \multiput(0,0)(60,0){4}{\dashbox{5}(0,180){}}
  2291.     \multiput(0,0)(0,60){4}{\dashbox{5}(180,0){}}
  2292.     \put(0,60){\makebox(60,60){\Huge$\times$}}
  2293.     \put(0,120){\makebox(60,60){\Huge$\times$}}
  2294.     \put(60,120){\makebox(60,60){\Huge$\times$}}
  2295.     \put(0,0){\makebox(60,60){\Huge$\times$}}
  2296.     \put(120,120){\makebox(60,60){\Huge$\times$}}
  2297.     \put(90,90){\line(-1,0){30}}
  2298.     \put(90,90){\line(0,1){30}}
  2299.     \put(90.0,120.0){\circle*{1}}\put(89.3,120.0){\circle*{1}}
  2300.     \put(88.6,120.0){\circle*{1}}\put(87.9,119.9){\circle*{1}}
  2301.     \put(87.2,119.9){\circle*{1}}\put(86.5,119.8){\circle*{1}}
  2302.     \put(85.8,119.7){\circle*{1}}\put(85.1,119.6){\circle*{1}}
  2303.     \put(84.3,119.5){\circle*{1}}\put(83.6,119.3){\circle*{1}}
  2304.     \put(82.9,119.2){\circle*{1}}\put(82.2,119.0){\circle*{1}}
  2305.     \put(81.5,118.8){\circle*{1}}\put(80.8,118.6){\circle*{1}}
  2306.     \put(80.1,118.3){\circle*{1}}\put(79.4,118.1){\circle*{1}}
  2307.     \put(78.7,117.8){\circle*{1}}\put(78.0,117.5){\circle*{1}}
  2308.     \put(77.3,117.2){\circle*{1}}\put(76.6,116.8){\circle*{1}}
  2309.     \put(75.9,116.5){\circle*{1}}\put(75.2,116.1){\circle*{1}}
  2310.     \put(74.4,115.7){\circle*{1}}\put(73.7,115.2){\circle*{1}}
  2311.     \put(73.0,114.7){\circle*{1}}\put(72.3,114.2){\circle*{1}}
  2312.     \put(71.6,113.7){\circle*{1}}\put(70.9,113.1){\circle*{1}}
  2313.     \put(70.2,112.5){\circle*{1}}\put(69.5,111.9){\circle*{1}}
  2314.     \put(68.8,111.2){\circle*{1}}\put(60.0,90.0){\circle*{1}}
  2315.     \put(60.0,90.7){\circle*{1}}\put(60.0,91.4){\circle*{1}}
  2316.     \put(60.1,92.1){\circle*{1}}\put(60.1,92.8){\circle*{1}}
  2317.     \put(60.2,93.5){\circle*{1}}\put(60.3,94.2){\circle*{1}}
  2318.     \put(60.4,94.9){\circle*{1}}\put(60.5,95.7){\circle*{1}}
  2319.     \put(60.7,96.4){\circle*{1}}\put(60.8,97.1){\circle*{1}}
  2320.     \put(61.0,97.8){\circle*{1}}\put(61.2,98.5){\circle*{1}}
  2321.     \put(61.4,99.2){\circle*{1}}\put(61.7,99.9){\circle*{1}}
  2322.     \put(61.9,100.6){\circle*{1}}\put(62.2,101.3){\circle*{1}}
  2323.     \put(62.5,102.0){\circle*{1}}\put(62.8,102.7){\circle*{1}}
  2324.     \put(63.2,103.4){\circle*{1}}\put(63.5,104.1){\circle*{1}}
  2325.     \put(63.9,104.8){\circle*{1}}\put(64.3,105.6){\circle*{1}}
  2326.     \put(64.8,106.3){\circle*{1}}\put(65.3,107.0){\circle*{1}}
  2327.     \put(65.8,107.7){\circle*{1}}\put(66.3,108.4){\circle*{1}}
  2328.     \put(66.9,109.1){\circle*{1}}\put(67.5,109.8){\circle*{1}}
  2329.     \put(68.1,110.5){\circle*{1}}
  2330.    \end{picture}}
  2331.  \end{picture}
  2332. \end{center}
  2333.  
  2334. Note that an active cell surrounded by inactive ones is always eventually 
  2335. filled by four quarter circles; the original bitmap pixel remains unchanged. In 
  2336. that case, rather than using four quarter circle macro calls, I use one call to 
  2337. another macro which paints one complete circle. The case of four squares is 
  2338. handled similarly with one big square. These two additional macros complete the 
  2339. collection of painting macros used by \verb"JIS2MF". 
  2340.  
  2341. \newpage %improve a bad page break
  2342.  
  2343. Figure~\ref{bitmapandcontinuouscharacter} illustrates typical results obtained 
  2344. with this algorithm using bitmap~2512 of the JIS~24 dot font. 
  2345.  
  2346. \begin{figure}[htb]
  2347.  \begin{center}
  2348.   \setlength{\unitlength}{6pt}
  2349.   \begin{picture}(56,24)
  2350.    \put(0,0){%
  2351.     \begin{picture}(25,25)(1,1)
  2352.      \put(1,1){\dashbox{0.25}(24,24){}}
  2353.      \put(1,5){\makebox(1,1){$\bullet$}}\put(1,16){\makebox(1,1){$\bullet$}}
  2354.      \put(1,20){\makebox(1,1){$\bullet$}}\put(2,6){\makebox(1,1){$\bullet$}}
  2355.      \put(2,16){\makebox(1,1){$\bullet$}}\put(2,20){\makebox(1,1){$\bullet$}}
  2356.      \put(3,7){\makebox(1,1){$\bullet$}}\put(3,8){\makebox(1,1){$\bullet$}}
  2357.      \put(3,16){\makebox(1,1){$\bullet$}}\put(3,20){\makebox(1,1){$\bullet$}}
  2358.      \put(4,8){\makebox(1,1){$\bullet$}}\put(4,9){\makebox(1,1){$\bullet$}}
  2359.      \put(4,10){\makebox(1,1){$\bullet$}}\put(4,16){\makebox(1,1){$\bullet$}}
  2360.      \put(4,21){\makebox(1,1){$\bullet$}}\put(5,10){\makebox(1,1){$\bullet$}}
  2361.      \put(5,11){\makebox(1,1){$\bullet$}}\put(5,12){\makebox(1,1){$\bullet$}}
  2362.      \put(5,13){\makebox(1,1){$\bullet$}}\put(5,16){\makebox(1,1){$\bullet$}}
  2363.      \put(5,21){\makebox(1,1){$\bullet$}}\put(6,1){\makebox(1,1){$\bullet$}}
  2364.      \put(6,2){\makebox(1,1){$\bullet$}}\put(6,3){\makebox(1,1){$\bullet$}}
  2365.      \put(6,4){\makebox(1,1){$\bullet$}}\put(6,5){\makebox(1,1){$\bullet$}}
  2366.      \put(6,6){\makebox(1,1){$\bullet$}}\put(6,7){\makebox(1,1){$\bullet$}}
  2367.      \put(6,8){\makebox(1,1){$\bullet$}}\put(6,9){\makebox(1,1){$\bullet$}}
  2368.      \put(6,10){\makebox(1,1){$\bullet$}}\put(6,11){\makebox(1,1){$\bullet$}}
  2369.      \put(6,12){\makebox(1,1){$\bullet$}}\put(6,13){\makebox(1,1){$\bullet$}}
  2370.      \put(6,14){\makebox(1,1){$\bullet$}}\put(6,15){\makebox(1,1){$\bullet$}}
  2371.      \put(6,16){\makebox(1,1){$\bullet$}}\put(6,17){\makebox(1,1){$\bullet$}}
  2372.      \put(6,18){\makebox(1,1){$\bullet$}}\put(6,19){\makebox(1,1){$\bullet$}}
  2373.      \put(6,20){\makebox(1,1){$\bullet$}}\put(6,21){\makebox(1,1){$\bullet$}}
  2374.      \put(7,1){\makebox(1,1){$\bullet$}}\put(7,2){\makebox(1,1){$\bullet$}}
  2375.      \put(7,3){\makebox(1,1){$\bullet$}}\put(7,4){\makebox(1,1){$\bullet$}}
  2376.      \put(7,5){\makebox(1,1){$\bullet$}}\put(7,6){\makebox(1,1){$\bullet$}}
  2377.      \put(7,7){\makebox(1,1){$\bullet$}}\put(7,8){\makebox(1,1){$\bullet$}}
  2378.      \put(7,9){\makebox(1,1){$\bullet$}}\put(7,10){\makebox(1,1){$\bullet$}}
  2379.      \put(7,11){\makebox(1,1){$\bullet$}}\put(7,12){\makebox(1,1){$\bullet$}}
  2380.      \put(7,13){\makebox(1,1){$\bullet$}}\put(7,14){\makebox(1,1){$\bullet$}}
  2381.      \put(7,15){\makebox(1,1){$\bullet$}}\put(7,16){\makebox(1,1){$\bullet$}}
  2382.      \put(7,17){\makebox(1,1){$\bullet$}}\put(7,18){\makebox(1,1){$\bullet$}}
  2383.      \put(7,19){\makebox(1,1){$\bullet$}}\put(7,20){\makebox(1,1){$\bullet$}}
  2384.      \put(7,21){\makebox(1,1){$\bullet$}}\put(7,22){\makebox(1,1){$\bullet$}}
  2385.      \put(8,12){\makebox(1,1){$\bullet$}}\put(8,16){\makebox(1,1){$\bullet$}}
  2386.      \put(8,22){\makebox(1,1){$\bullet$}}\put(9,12){\makebox(1,1){$\bullet$}}
  2387.      \put(9,16){\makebox(1,1){$\bullet$}}\put(9,22){\makebox(1,1){$\bullet$}}
  2388.      \put(9,23){\makebox(1,1){$\bullet$}}\put(10,3){\makebox(1,1){$\bullet$}}
  2389.      \put(10,11){\makebox(1,1){$\bullet$}}\put(10,16){\makebox(1,1){$\bullet$}}
  2390.      \put(10,17){\makebox(1,1){$\bullet$}}\put(10,23){\makebox(1,1){$\bullet$}}
  2391.      \put(10,24){\makebox(1,1){$\bullet$}}\put(11,1){\makebox(1,1){$\bullet$}}
  2392.      \put(11,2){\makebox(1,1){$\bullet$}}\put(11,3){\makebox(1,1){$\bullet$}}
  2393.      \put(11,9){\makebox(1,1){$\bullet$}}\put(11,10){\makebox(1,1){$\bullet$}}
  2394.      \put(11,11){\makebox(1,1){$\bullet$}}\put(11,16){\makebox(1,1){$\bullet$}}
  2395.      \put(11,17){\makebox(1,1){$\bullet$}}\put(11,23){\makebox(1,1){$\bullet$}}
  2396.      \put(11,24){\makebox(1,1){$\bullet$}}\put(12,2){\makebox(1,1){$\bullet$}}
  2397.      \put(12,3){\makebox(1,1){$\bullet$}}\put(12,9){\makebox(1,1){$\bullet$}}
  2398.      \put(12,10){\makebox(1,1){$\bullet$}}\put(12,16){\makebox(1,1){$\bullet$}}
  2399.      \put(12,23){\makebox(1,1){$\bullet$}}\put(13,2){\makebox(1,1){$\bullet$}}
  2400.      \put(13,3){\makebox(1,1){$\bullet$}}\put(14,2){\makebox(1,1){$\bullet$}}
  2401.      \put(14,3){\makebox(1,1){$\bullet$}}\put(14,4){\makebox(1,1){$\bullet$}}
  2402.      \put(14,5){\makebox(1,1){$\bullet$}}\put(15,3){\makebox(1,1){$\bullet$}}
  2403.      \put(15,6){\makebox(1,1){$\bullet$}}\put(15,7){\makebox(1,1){$\bullet$}}
  2404.      \put(15,8){\makebox(1,1){$\bullet$}}\put(15,9){\makebox(1,1){$\bullet$}}
  2405.      \put(16,3){\makebox(1,1){$\bullet$}}\put(16,8){\makebox(1,1){$\bullet$}}
  2406.      \put(16,9){\makebox(1,1){$\bullet$}}\put(16,10){\makebox(1,1){$\bullet$}}
  2407.      \put(16,11){\makebox(1,1){$\bullet$}}\put(16,12){\makebox(1,1){$\bullet$}}
  2408.      \put(16,13){\makebox(1,1){$\bullet$}}\put(16,14){\makebox(1,1){$\bullet$}}
  2409.      \put(16,15){\makebox(1,1){$\bullet$}}\put(16,16){\makebox(1,1){$\bullet$}}
  2410.      \put(17,3){\makebox(1,1){$\bullet$}}\put(17,12){\makebox(1,1){$\bullet$}}
  2411.      \put(17,13){\makebox(1,1){$\bullet$}}\put(17,14){\makebox(1,1){$\bullet$}}
  2412.      \put(17,15){\makebox(1,1){$\bullet$}}\put(17,16){\makebox(1,1){$\bullet$}}
  2413.      \put(17,17){\makebox(1,1){$\bullet$}}\put(17,18){\makebox(1,1){$\bullet$}}
  2414.      \put(17,19){\makebox(1,1){$\bullet$}}\put(17,20){\makebox(1,1){$\bullet$}}
  2415.      \put(17,21){\makebox(1,1){$\bullet$}}\put(17,22){\makebox(1,1){$\bullet$}}
  2416.      \put(17,23){\makebox(1,1){$\bullet$}}\put(17,24){\makebox(1,1){$\bullet$}}
  2417.      \put(18,3){\makebox(1,1){$\bullet$}}\put(18,17){\makebox(1,1){$\bullet$}}
  2418.      \put(18,18){\makebox(1,1){$\bullet$}}\put(18,19){\makebox(1,1){$\bullet$}}
  2419.      \put(18,20){\makebox(1,1){$\bullet$}}\put(18,21){\makebox(1,1){$\bullet$}}
  2420.      \put(18,22){\makebox(1,1){$\bullet$}}\put(18,23){\makebox(1,1){$\bullet$}}
  2421.      \put(19,4){\makebox(1,1){$\bullet$}}\put(19,23){\makebox(1,1){$\bullet$}}
  2422.      \put(20,4){\makebox(1,1){$\bullet$}}\put(20,8){\makebox(1,1){$\bullet$}}
  2423.      \put(21,4){\makebox(1,1){$\bullet$}}\put(21,6){\makebox(1,1){$\bullet$}}
  2424.      \put(21,7){\makebox(1,1){$\bullet$}}\put(22,4){\makebox(1,1){$\bullet$}}
  2425.      \put(22,5){\makebox(1,1){$\bullet$}}\put(22,6){\makebox(1,1){$\bullet$}}
  2426.      \put(23,1){\makebox(1,1){$\bullet$}}\put(23,2){\makebox(1,1){$\bullet$}}
  2427.      \put(23,3){\makebox(1,1){$\bullet$}}\put(23,4){\makebox(1,1){$\bullet$}}
  2428.      \put(23,5){\makebox(1,1){$\bullet$}}\put(24,1){\makebox(1,1){$\bullet$}}
  2429.      \put(24,2){\makebox(1,1){$\bullet$}}\put(24,3){\makebox(1,1){$\bullet$}}
  2430.     \end{picture}}
  2431.    \put(32,0){%
  2432.     \begin{picture}(24,21.25)(0,-2.75)
  2433.      \newsavebox{\sss}
  2434.      \sbox{\sss}{%
  2435.       \begin{picture}(1,1)
  2436.        \put(0,0){\framebox(1,1){}}
  2437.       \end{picture}}
  2438.      \newsavebox{\sul}
  2439.      \sbox{\sul}{%
  2440.       \begin{picture}(1,1)
  2441.        \put(0,0.5){\framebox(0.5,0.5){}}
  2442.       \end{picture}}
  2443.      \newsavebox{\sur}
  2444.      \sbox{\sur}{%
  2445.       \begin{picture}(1,1)
  2446.        \put(0.5,0.5){\framebox(0.5,0.5){}}
  2447.       \end{picture}}
  2448.      \newsavebox{\sbr}
  2449.      \sbox{\sbr}{%
  2450.       \begin{picture}(1,1)
  2451.        \put(0.5,0){\framebox(0.5,0.5){}}
  2452.       \end{picture}}
  2453.      \newsavebox{\sbl}
  2454.      \sbox{\sbl}{%
  2455.       \begin{picture}(1,1)
  2456.        \put(0,0){\framebox(0.5,0.5){}}
  2457.       \end{picture}}
  2458.      \newsavebox{\cul}
  2459.      \sbox{\cul}{%
  2460.       \begin{picture}(1,1)
  2461.        \put(0.5,0.5){\line(-1,0){0.5}}
  2462.        \put(0.5,0.5){\line(0,1){0.5}}
  2463.        \put(0.50,1.00){\circle*{0.05}}\put(0.43,0.99){\circle*{0.05}}
  2464.        \put(0.36,0.98){\circle*{0.05}}\put(0.29,0.95){\circle*{0.05}}
  2465.        \put(0.22,0.91){\circle*{0.05}}\put(0.15,0.85){\circle*{0.05}}
  2466.        \put(0.00,0.50){\circle*{0.05}}\put(0.01,0.57){\circle*{0.05}}
  2467.        \put(0.02,0.64){\circle*{0.05}}\put(0.05,0.71){\circle*{0.05}}
  2468.        \put(0.09,0.78){\circle*{0.05}}
  2469.       \end{picture}}
  2470.      \newsavebox{\cur}
  2471.      \sbox{\cur}{%
  2472.       \begin{picture}(1,1)
  2473.        \put(0.5,0.5){\line(1,0){0.5}}
  2474.        \put(0.5,0.5){\line(0,1){0.5}}
  2475.        \put(0.50,1.00){\circle*{0.05}}\put(0.57,0.99){\circle*{0.05}}
  2476.        \put(0.64,0.98){\circle*{0.05}}\put(0.71,0.95){\circle*{0.05}}
  2477.        \put(0.78,0.91){\circle*{0.05}}\put(0.85,0.85){\circle*{0.05}}
  2478.        \put(1.00,0.50){\circle*{0.05}}\put(0.99,0.57){\circle*{0.05}}
  2479.        \put(0.98,0.64){\circle*{0.05}}\put(0.95,0.71){\circle*{0.05}}
  2480.        \put(0.91,0.78){\circle*{0.05}}
  2481.       \end{picture}}
  2482.      \newsavebox{\cbr}
  2483.      \sbox{\cbr}{%
  2484.       \begin{picture}(1,1)
  2485.        \put(0.5,0.5){\line(1,0){0.5}}
  2486.        \put(0.5,0.5){\line(0,-1){0.5}}
  2487.        \put(0.50,0.00){\circle*{0.05}}\put(0.57,0.01){\circle*{0.05}}
  2488.        \put(0.64,0.02){\circle*{0.05}}\put(0.71,0.05){\circle*{0.05}}
  2489.        \put(0.78,0.09){\circle*{0.05}}\put(0.85,0.15){\circle*{0.05}}
  2490.        \put(1.00,0.50){\circle*{0.05}}\put(0.99,0.43){\circle*{0.05}}
  2491.        \put(0.98,0.36){\circle*{0.05}}\put(0.95,0.29){\circle*{0.05}}
  2492.        \put(0.91,0.22){\circle*{0.05}}
  2493.       \end{picture}}
  2494.      \newsavebox{\cbl}
  2495.      \sbox{\cbl}{%
  2496.       \begin{picture}(1,1)
  2497.        \put(0.5,0.5){\line(-1,0){0.5}}
  2498.        \put(0.5,0.5){\line(0,-1){0.5}}
  2499.        \put(0.50,0.00){\circle*{0.05}}\put(0.43,0.01){\circle*{0.05}}
  2500.        \put(0.36,0.02){\circle*{0.05}}\put(0.29,0.05){\circle*{0.05}}
  2501.        \put(0.22,0.09){\circle*{0.05}}\put(0.15,0.15){\circle*{0.05}}
  2502.        \put(0.00,0.50){\circle*{0.05}}\put(0.01,0.43){\circle*{0.05}}
  2503.        \put(0.02,0.36){\circle*{0.05}}\put(0.05,0.29){\circle*{0.05}}
  2504.        \put(0.09,0.22){\circle*{0.05}}
  2505.       \end{picture}}
  2506.      \newsavebox{\tul}
  2507.      \sbox{\tul}{%
  2508.       \begin{picture}(1,1)
  2509.        \put(0.5,0.5){\line(-1,0){0.5}}
  2510.        \put(0.5,0.5){\line(0,1){0.5}}
  2511.        \multiput(0,0.5)(0.05,0.05){11}{\circle*{0.05}}
  2512.       \end{picture}}
  2513.      \newsavebox{\tur}
  2514.      \sbox{\tur}{%
  2515.       \begin{picture}(1,1)
  2516.        \put(0.5,0.5){\line(1,0){0.5}}
  2517.        \put(0.5,0.5){\line(0,1){0.5}}
  2518.        \put(0.5,1){\line(1,-1){0.5}}
  2519.        \multiput(0.5,1)(0.05,-0.05){11}{\circle*{0.05}}
  2520.       \end{picture}}
  2521.      \newsavebox{\tbr}
  2522.      \sbox{\tbr}{%
  2523.       \begin{picture}(1,1)
  2524.        \put(0.5,0.5){\line(1,0){0.5}}
  2525.        \put(0.5,0.5){\line(0,-1){0.5}}
  2526.        \put(0.5,0){\line(1,1){0.5}}
  2527.        \multiput(0.5,0)(0.05,0.05){11}{\circle*{0.05}}
  2528.       \end{picture}}
  2529.      \newsavebox{\tbl}
  2530.      \sbox{\tbl}{%
  2531.       \begin{picture}(1,1)
  2532.        \put(0.5,0.5){\line(-1,0){0.5}}
  2533.        \put(0.5,0.5){\line(0,-1){0.5}}
  2534.        \put(0,0.5){\line(1,-1){0.5}}
  2535.        \multiput(0,0.5)(0.05,-0.05){11}{\circle*{0.05}}
  2536.       \end{picture}}
  2537.      \newsavebox{\rul}
  2538.      \sbox{\rul}{%
  2539.       \begin{picture}(1,1)
  2540.        \put(0,1){\line(1,0){0.5}}
  2541.        \put(0,0.5){\line(0,1){0.5}}
  2542.        \put(0,0.5){\line(1,1){0.5}}
  2543.        \multiput(0,0.5)(0.05,0.05){11}{\circle*{0.05}}
  2544.       \end{picture}}
  2545.      \newsavebox{\rur}
  2546.      \sbox{\rur}{%
  2547.       \begin{picture}(1,1)
  2548.        \put(0.5,1){\line(1,0){0.5}}
  2549.        \put(1,0.5){\line(0,1){0.5}}
  2550.        \put(0.5,1){\line(1,-1){0.5}}
  2551.        \multiput(0.5,1)(0.05,-0.05){11}{\circle*{0.05}}
  2552.       \end{picture}}
  2553.      \newsavebox{\rbr}
  2554.      \sbox{\rbr}{%
  2555.       \begin{picture}(1,1)
  2556.        \put(0.5,0){\line(1,0){0.5}}
  2557.        \put(1,0){\line(0,1){0.5}}
  2558.        \put(0.5,0){\line(1,1){0.5}}
  2559.        \multiput(0.5,0)(0.05,0.05){11}{\circle*{0.05}}
  2560.       \end{picture}}
  2561.      \newsavebox{\rbl}
  2562.      \sbox{\rbl}{%
  2563.       \begin{picture}(1,1)
  2564.        \put(0,0){\line(1,0){0.5}}
  2565.        \put(0,0){\line(0,1){0.5}}
  2566.        \put(0,0.5){\line(1,-1){0.5}}
  2567.        \multiput(0,0.5)(0.05,-0.05){11}{\circle*{0.05}}
  2568.       \end{picture}}
  2569.      \newsavebox{\tuul}
  2570.      \sbox{\tuul}{%
  2571.       \begin{picture}(1,1)
  2572.        \put(0,0.5){\line(1,0){1}}
  2573.        \put(1,0.5){\line(0,1){0.5}}
  2574.        \multiput(0,0.5)(0.05,0.025){21}{\circle*{0.05}}
  2575.       \end{picture}}
  2576.      \newsavebox{\tuur}
  2577.      \sbox{\tuur}{%
  2578.       \begin{picture}(1,1)
  2579.        \put(0,0.5){\line(1,0){1}}
  2580.        \put(0,0.5){\line(0,1){0.5}}
  2581.        \multiput(0,1)(0.05,-0.025){21}{\circle*{0.05}}
  2582.       \end{picture}}
  2583.      \newsavebox{\tbbl}
  2584.      \sbox{\tbbl}{%
  2585.       \begin{picture}(1,1)
  2586.        \put(0,0.5){\line(1,0){1}}
  2587.        \put(1,0){\line(0,1){0.5}}
  2588.        \multiput(0,0.5)(0.05,-0.025){21}{\circle*{0.05}}
  2589.       \end{picture}}
  2590.      \newsavebox{\tbbr}
  2591.      \sbox{\tbbr}{%
  2592.       \begin{picture}(1,1)
  2593.        \put(0,0.5){\line(1,0){1}}
  2594.        \put(0,0){\line(0,1){0.5}}
  2595.        \multiput(0,0)(0.05,0.025){21}{\circle*{0.05}}
  2596.       \end{picture}}
  2597.      \newsavebox{\tull}
  2598.      \sbox{\tull}{%
  2599.       \begin{picture}(1,1)
  2600.        \put(0.5,0){\line(0,1){1}}
  2601.        \put(0,0){\line(1,0){0.5}}
  2602.        \multiput(0,0)(0.025,0.05){21}{\circle*{0.05}}
  2603.       \end{picture}}
  2604.      \newsavebox{\turr}
  2605.      \sbox{\turr}{%
  2606.       \begin{picture}(1,1)
  2607.        \put(0.5,0){\line(0,1){1}}
  2608.        \put(0.5,0){\line(1,0){0.5}}
  2609.        \multiput(0.5,1)(0.025,-0.05){21}{\circle*{0.05}}
  2610.       \end{picture}}
  2611.      \newsavebox{\tbll}
  2612.      \sbox{\tbll}{%
  2613.       \begin{picture}(1,1)
  2614.        \put(0.5,0){\line(0,1){1}}
  2615.        \put(0,1){\line(1,0){0.5}}
  2616.        \multiput(0,1)(0.025,-0.05){21}{\circle*{0.05}}
  2617.       \end{picture}}
  2618.      \newsavebox{\tbrr}
  2619.      \sbox{\tbrr}{%
  2620.       \begin{picture}(1,1)
  2621.        \put(0.5,0){\line(0,1){1}}
  2622.        \put(0.5,1){\line(1,0){0.5}}
  2623.        \multiput(0.5,0)(0.025,0.05){21}{\circle*{0.05}}
  2624.       \end{picture}}
  2625.      \newsavebox{\ruul}
  2626.      \sbox{\ruul}{%
  2627.       \begin{picture}(1,1)
  2628.        \put(0,1){\line(1,0){0.5}}
  2629.        \put(0,0){\line(0,1){1}}
  2630.        \multiput(0,0)(0.025,0.05){21}{\circle*{0.05}}
  2631.       \end{picture}}
  2632.      \newsavebox{\ruur}
  2633.      \sbox{\ruur}{%
  2634.       \begin{picture}(1,1)
  2635.        \put(0.5,1){\line(1,0){0.5}}
  2636.        \put(1,0){\line(0,1){1}}
  2637.        \multiput(0.5,1)(0.025,-0.05){21}{\circle*{0.05}}
  2638.       \end{picture}}
  2639.      \newsavebox{\rbbl}
  2640.      \sbox{\rbbl}{%
  2641.       \begin{picture}(1,1)
  2642.        \put(0,0){\line(1,0){0.5}}
  2643.        \put(0,0){\line(0,1){1}}
  2644.        \multiput(0,1)(0.025,-0.05){21}{\circle*{0.05}}
  2645.       \end{picture}}
  2646.      \newsavebox{\rbbr}
  2647.      \sbox{\rbbr}{%
  2648.       \begin{picture}(1,1)
  2649.        \put(0.5,0){\line(1,0){0.5}}
  2650.        \put(1,0){\line(0,1){1}}
  2651.        \multiput(0.5,0)(0.025,0.05){21}{\circle*{0.05}}
  2652.       \end{picture}}
  2653.      \newsavebox{\rull}
  2654.      \sbox{\rull}{%
  2655.       \begin{picture}(1,1)
  2656.        \put(0,1){\line(1,0){1}}
  2657.        \put(0,0.5){\line(0,1){0.5}}
  2658.        \multiput(0,0.5)(0.05,0.025){21}{\circle*{0.05}}
  2659.       \end{picture}}
  2660.      \newsavebox{\rurr}
  2661.      \sbox{\rurr}{%
  2662.       \begin{picture}(1,1)
  2663.        \put(0,1){\line(1,0){1}}
  2664.        \put(1,0.5){\line(0,1){0.5}}
  2665.        \multiput(0,1)(0.05,-0.025){21}{\circle*{0.05}}
  2666.       \end{picture}}
  2667.      \newsavebox{\rbll}
  2668.      \sbox{\rbll}{%
  2669.       \begin{picture}(1,1)
  2670.        \put(0,0){\line(1,0){1}}
  2671.        \put(0,0){\line(0,1){0.5}}
  2672.        \multiput(0,0.5)(0.05,-0.025){21}{\circle*{0.05}}
  2673.       \end{picture}}
  2674.      \newsavebox{\rbrr}
  2675.      \sbox{\rbrr}{%
  2676.       \begin{picture}(1,1)
  2677.        \put(0,0){\line(1,0){1}}
  2678.        \put(1,0){\line(0,1){0.5}}
  2679.        \multiput(0,0)(0.05,0.025){21}{\circle*{0.05}}
  2680.       \end{picture}}
  2681.      \put(0,-2.75){\dashbox{0.25}(24,24){}}
  2682.      \put(0,0){\line(1,0){24}}
  2683.      \put(0,1.25){\usebox{\tul}}\put(0,1.25){\usebox{\sur}}
  2684.      \put(0,1.25){\usebox{\cbl}}\put(0,1.25){\usebox{\tbr}}
  2685.      \put(0,2.25){\usebox{\rbr}}\put(0,12.25){\usebox{\cul}}
  2686.      \put(0,12.25){\usebox{\sur}}\put(0,12.25){\usebox{\cbl}}
  2687.      \put(0,12.25){\usebox{\sbr}}\put(0,16.25){\usebox{\cul}}
  2688.      \put(0,16.25){\usebox{\sur}}\put(0,16.25){\usebox{\cbl}}
  2689.      \put(0,16.25){\usebox{\sbr}}\put(1,1.25){\usebox{\rul}}
  2690.      \put(1,2.25){\usebox{\tul}}\put(1,2.25){\usebox{\sur}}
  2691.      \put(1,2.25){\usebox{\sbl}}\put(1,2.25){\usebox{\tbr}}
  2692.      \put(1,3.25){\usebox{\rbbr}}\put(1,12.25){\usebox{\sss}}
  2693.      \put(1,16.25){\usebox{\sss}}\put(2,2.25){\usebox{\rul}}
  2694.      \put(2,3.25){\usebox{\sul}}\put(2,3.25){\usebox{\sur}}
  2695.      \put(2,3.25){\usebox{\sbl}}\put(2,3.25){\usebox{\tbr}}
  2696.      \put(2,4.25){\usebox{\tull}}\put(2,4.25){\usebox{\sur}}
  2697.      \put(2,4.25){\usebox{\sbr}}\put(2,5.25){\usebox{\rbbr}}
  2698.      \put(2,12.25){\usebox{\sss}}\put(2,16.25){\usebox{\tbbr}}
  2699.      \put(2,16.25){\usebox{\sul}}\put(2,16.25){\usebox{\sur}}
  2700.      \put(2,17.25){\usebox{\rbrr}}\put(3,3.25){\usebox{\rul}}
  2701.      \put(3,4.25){\usebox{\tbrr}}\put(3,4.25){\usebox{\sul}}
  2702.      \put(3,4.25){\usebox{\sbl}}\put(3,5.25){\usebox{\sss}}
  2703.      \put(3,6.25){\usebox{\tull}}\put(3,6.25){\usebox{\sur}}
  2704.      \put(3,6.25){\usebox{\sbr}}\put(3,7.25){\usebox{\rbbr}}
  2705.      \put(3,12.25){\usebox{\sss}}\put(3,16.25){\usebox{\rull}}
  2706.      \put(3,17.25){\usebox{\tuul}}\put(3,17.25){\usebox{\sbl}}
  2707.      \put(3,17.25){\usebox{\sbr}}\put(4,5.25){\usebox{\rul}}
  2708.      \put(4,5.25){\usebox{\rur}}\put(4,6.25){\usebox{\sss}}
  2709.      \put(4,7.25){\usebox{\sss}}\put(4,8.25){\usebox{\sss}}
  2710.      \put(4,9.25){\usebox{\tull}}\put(4,9.25){\usebox{\sur}}
  2711.      \put(4,9.25){\usebox{\sbr}}\put(4,10.25){\usebox{\rbbr}}
  2712.      \put(4,11.25){\usebox{\rur}}\put(4,12.25){\usebox{\sss}}
  2713.      \put(4,13.25){\usebox{\rbr}}\put(4,16.25){\usebox{\rur}}
  2714.      \put(4,17.25){\usebox{\sss}}\put(5,-2.75){\usebox{\sul}}
  2715.      \put(5,-2.75){\usebox{\sur}}\put(5,-2.75){\usebox{\cbl}}
  2716.      \put(5,-2.75){\usebox{\sbr}}\put(5,-1.75){\usebox{\sss}}
  2717.      \put(5,-0.75){\usebox{\sss}}\put(5,0.25){\usebox{\sss}}
  2718.      \put(5,1.25){\usebox{\sss}}\put(5,2.25){\usebox{\sss}}
  2719.      \put(5,3.25){\usebox{\sss}}\put(5,4.25){\usebox{\sss}}
  2720.      \put(5,5.25){\usebox{\sss}}\put(5,6.25){\usebox{\sss}}
  2721.      \put(5,7.25){\usebox{\sss}}\put(5,8.25){\usebox{\sss}}
  2722.      \put(5,9.25){\usebox{\sss}}\put(5,10.25){\usebox{\sss}}
  2723.      \put(5,11.25){\usebox{\sss}}\put(5,12.25){\usebox{\sss}}
  2724.      \put(5,13.25){\usebox{\sss}}\put(5,14.25){\usebox{\sss}}
  2725.      \put(5,15.25){\usebox{\sss}}\put(5,16.25){\usebox{\sss}}
  2726.      \put(5,17.25){\usebox{\sss}}\put(5,18.25){\usebox{\rbrr}}
  2727.      \put(6,-2.75){\usebox{\sul}}\put(6,-2.75){\usebox{\sur}}
  2728.      \put(6,-2.75){\usebox{\sbl}}\put(6,-2.75){\usebox{\cbr}}
  2729.      \put(6,-1.75){\usebox{\sss}}\put(6,-0.75){\usebox{\sss}}
  2730.      \put(6,0.25){\usebox{\sss}}\put(6,1.25){\usebox{\sss}}
  2731.      \put(6,2.25){\usebox{\sss}}\put(6,3.25){\usebox{\sss}}
  2732.      \put(6,4.25){\usebox{\sss}}\put(6,5.25){\usebox{\sss}}
  2733.      \put(6,6.25){\usebox{\sss}}\put(6,7.25){\usebox{\sss}}
  2734.      \put(6,8.25){\usebox{\sss}}\put(6,9.25){\usebox{\sss}}
  2735.      \put(6,10.25){\usebox{\sss}}\put(6,11.25){\usebox{\sss}}
  2736.      \put(6,12.25){\usebox{\sss}}\put(6,13.25){\usebox{\sss}}
  2737.      \put(6,14.25){\usebox{\sss}}\put(6,15.25){\usebox{\sss}}
  2738.      \put(6,16.25){\usebox{\sss}}\put(6,17.25){\usebox{\sss}}
  2739.      \put(6,18.25){\usebox{\tuul}}\put(6,18.25){\usebox{\sbl}}
  2740.      \put(6,18.25){\usebox{\sbr}}\put(7,7.25){\usebox{\rul}}
  2741.      \put(7,8.25){\usebox{\sss}}\put(7,9.25){\usebox{\rbl}}
  2742.      \put(7,11.25){\usebox{\rul}}\put(7,12.25){\usebox{\sss}}
  2743.      \put(7,13.25){\usebox{\rbl}}\put(7,17.25){\usebox{\rul}}
  2744.      \put(7,18.25){\usebox{\sss}}\put(7,19.25){\usebox{\rbrr}}
  2745.      \put(8,7.25){\usebox{\rurr}}\put(8,8.25){\usebox{\tuur}}
  2746.      \put(8,8.25){\usebox{\sbl}}\put(8,8.25){\usebox{\sbr}}
  2747.      \put(8,12.25){\usebox{\sss}}\put(8,13.25){\usebox{\rbrr}}
  2748.      \put(8,18.25){\usebox{\tbbr}}\put(8,18.25){\usebox{\sul}}
  2749.      \put(8,18.25){\usebox{\sur}}\put(8,19.25){\usebox{\tul}}
  2750.      \put(8,19.25){\usebox{\sur}}\put(8,19.25){\usebox{\sbl}}
  2751.      \put(8,19.25){\usebox{\sbr}}\put(8,20.25){\usebox{\rbr}}
  2752.      \put(9,-1.75){\usebox{\ruur}}\put(9,-0.75){\usebox{\cul}}
  2753.      \put(9,-0.75){\usebox{\sur}}\put(9,-0.75){\usebox{\tbl}}
  2754.      \put(9,-0.75){\usebox{\sbr}}\put(9,6.25){\usebox{\ruur}}
  2755.      \put(9,7.25){\usebox{\sul}}\put(9,7.25){\usebox{\sur}}
  2756.      \put(9,7.25){\usebox{\tbl}}\put(9,7.25){\usebox{\sbr}}
  2757.      \put(9,8.25){\usebox{\rbll}}\put(9,12.25){\usebox{\sss}}
  2758.      \put(9,13.25){\usebox{\tuul}}\put(9,13.25){\usebox{\sbl}}
  2759.      \put(9,13.25){\usebox{\sbr}}\put(9,18.25){\usebox{\rull}}
  2760.      \put(9,19.25){\usebox{\sss}}\put(9,20.25){\usebox{\tuul}}
  2761.      \put(9,20.25){\usebox{\sbl}}\put(9,20.25){\usebox{\sbr}}
  2762.      \put(10,-2.75){\usebox{\sul}}\put(10,-2.75){\usebox{\sur}}
  2763.      \put(10,-2.75){\usebox{\cbl}}\put(10,-2.75){\usebox{\tbr}}
  2764.      \put(10,-1.75){\usebox{\sss}}\put(10,-0.75){\usebox{\sss}}
  2765.      \put(10,5.25){\usebox{\sul}}\put(10,5.25){\usebox{\sur}}
  2766.      \put(10,5.25){\usebox{\cbl}}\put(10,5.25){\usebox{\sbr}}
  2767.      \put(10,6.25){\usebox{\sss}}\put(10,7.25){\usebox{\tuur}}
  2768.      \put(10,7.25){\usebox{\sbl}}\put(10,7.25){\usebox{\sbr}}
  2769.      \put(10,12.25){\usebox{\sss}}\put(10,13.25){\usebox{\tuur}}
  2770.      \put(10,13.25){\usebox{\sbl}}\put(10,13.25){\usebox{\sbr}}
  2771.      \put(10,19.25){\usebox{\sss}}\put(10,20.25){\usebox{\tuur}}
  2772.      \put(10,20.25){\usebox{\sbl}}\put(10,20.25){\usebox{\sbr}}
  2773.      \put(11,-2.75){\usebox{\rull}}\put(11,-1.75){\usebox{\sss}}
  2774.      \put(11,-0.75){\usebox{\sss}}\put(11,5.25){\usebox{\sul}}
  2775.      \put(11,5.25){\usebox{\sur}}\put(11,5.25){\usebox{\sbl}}
  2776.      \put(11,5.25){\usebox{\cbr}}\put(11,6.25){\usebox{\turr}}
  2777.      \put(11,6.25){\usebox{\sul}}\put(11,6.25){\usebox{\sbl}}
  2778.      \put(11,7.25){\usebox{\rbl}}\put(11,12.25){\usebox{\sul}}
  2779.      \put(11,12.25){\usebox{\tur}}\put(11,12.25){\usebox{\sbl}}
  2780.      \put(11,12.25){\usebox{\cbr}}\put(11,13.25){\usebox{\rbl}}
  2781.      \put(11,19.25){\usebox{\sul}}\put(11,19.25){\usebox{\tur}}
  2782.      \put(11,19.25){\usebox{\sbl}}\put(11,19.25){\usebox{\cbr}}
  2783.      \put(11,20.25){\usebox{\rbl}}\put(12,-1.75){\usebox{\sss}}
  2784.      \put(12,-0.75){\usebox{\sss}}\put(12,0.25){\usebox{\rbr}}
  2785.      \put(13,-1.75){\usebox{\tbbr}}\put(13,-1.75){\usebox{\sul}}
  2786.      \put(13,-1.75){\usebox{\sur}}\put(13,-0.75){\usebox{\sss}}
  2787.      \put(13,0.25){\usebox{\sss}}\put(13,1.25){\usebox{\tull}}
  2788.      \put(13,1.25){\usebox{\sur}}\put(13,1.25){\usebox{\sbr}}
  2789.      \put(13,2.25){\usebox{\rbbr}}\put(14,-1.75){\usebox{\rull}}
  2790.      \put(14,-0.75){\usebox{\sss}}\put(14,0.25){\usebox{\rbl}}
  2791.      \put(14,1.25){\usebox{\ruul}}\put(14,2.25){\usebox{\tbrr}}
  2792.      \put(14,2.25){\usebox{\sul}}\put(14,2.25){\usebox{\sbl}}
  2793.      \put(14,3.25){\usebox{\sss}}\put(14,4.25){\usebox{\sss}}
  2794.      \put(14,5.25){\usebox{\tull}}\put(14,5.25){\usebox{\sur}}
  2795.      \put(14,5.25){\usebox{\sbr}}\put(14,6.25){\usebox{\rbbr}}
  2796.      \put(15,-0.75){\usebox{\sss}}\put(15,3.25){\usebox{\ruul}}
  2797.      \put(15,4.25){\usebox{\tbrr}}\put(15,4.25){\usebox{\sul}}
  2798.      \put(15,4.25){\usebox{\sbl}}\put(15,5.25){\usebox{\sss}}
  2799.      \put(15,6.25){\usebox{\sss}}\put(15,7.25){\usebox{\sss}}
  2800.      \put(15,8.25){\usebox{\sss}}\put(15,9.25){\usebox{\sss}}
  2801.      \put(15,10.25){\usebox{\sss}}\put(15,11.25){\usebox{\sss}}
  2802.      \put(15,12.25){\usebox{\tull}}\put(15,12.25){\usebox{\sur}}
  2803.      \put(15,12.25){\usebox{\sbr}}\put(15,13.25){\usebox{\rbbr}}
  2804.      \put(16,-0.75){\usebox{\sss}}\put(16,7.25){\usebox{\ruul}}
  2805.      \put(16,8.25){\usebox{\tbrr}}\put(16,8.25){\usebox{\sul}}
  2806.      \put(16,8.25){\usebox{\sbl}}\put(16,9.25){\usebox{\sss}}
  2807.      \put(16,10.25){\usebox{\sss}}\put(16,11.25){\usebox{\sss}}
  2808.      \put(16,12.25){\usebox{\sss}}\put(16,13.25){\usebox{\sss}}
  2809.      \put(16,14.25){\usebox{\sss}}\put(16,15.25){\usebox{\sss}}
  2810.      \put(16,16.25){\usebox{\sss}}\put(16,17.25){\usebox{\sss}}
  2811.      \put(16,18.25){\usebox{\sss}}\put(16,19.25){\usebox{\sss}}
  2812.      \put(16,20.25){\usebox{\cul}}\put(16,20.25){\usebox{\tur}}
  2813.      \put(16,20.25){\usebox{\sbl}}\put(16,20.25){\usebox{\sbr}}
  2814.      \put(17,-0.75){\usebox{\tbbr}}\put(17,-0.75){\usebox{\sul}}
  2815.      \put(17,-0.75){\usebox{\sur}}\put(17,0.25){\usebox{\rbrr}}
  2816.      \put(17,12.25){\usebox{\ruul}}\put(17,13.25){\usebox{\tbrr}}
  2817.      \put(17,13.25){\usebox{\sul}}\put(17,13.25){\usebox{\sbl}}
  2818.      \put(17,14.25){\usebox{\sss}}\put(17,15.25){\usebox{\sss}}
  2819.      \put(17,16.25){\usebox{\sss}}\put(17,17.25){\usebox{\sss}}
  2820.      \put(17,18.25){\usebox{\sss}}\put(17,19.25){\usebox{\sss}}
  2821.      \put(17,20.25){\usebox{\rbll}}\put(18,-0.75){\usebox{\rull}}
  2822.      \put(18,0.25){\usebox{\tuul}}\put(18,0.25){\usebox{\sbl}}
  2823.      \put(18,0.25){\usebox{\sbr}}\put(18,18.25){\usebox{\ruul}}
  2824.      \put(18,19.25){\usebox{\sul}}\put(18,19.25){\usebox{\cur}}
  2825.      \put(18,19.25){\usebox{\sbl}}\put(18,19.25){\usebox{\tbr}}
  2826.      \put(19,0.25){\usebox{\sss}}\put(19,3.25){\usebox{\ruur}}
  2827.      \put(19,4.25){\usebox{\cul}}\put(19,4.25){\usebox{\tur}}
  2828.      \put(19,4.25){\usebox{\tbl}}\put(19,4.25){\usebox{\sbr}}
  2829.      \put(20,0.25){\usebox{\sss}}\put(20,1.25){\usebox{\ruur}}
  2830.      \put(20,1.25){\usebox{\rbr}}\put(20,2.25){\usebox{\tbll}}
  2831.      \put(20,2.25){\usebox{\sur}}\put(20,2.25){\usebox{\sbr}}
  2832.      \put(20,3.25){\usebox{\sul}}\put(20,3.25){\usebox{\tur}}
  2833.      \put(20,3.25){\usebox{\sbl}}\put(20,3.25){\usebox{\sbr}}
  2834.      \put(20,4.25){\usebox{\rbl}}\put(21,-0.75){\usebox{\rur}}
  2835.      \put(21,0.25){\usebox{\sss}}\put(21,1.25){\usebox{\sss}}
  2836.      \put(21,2.25){\usebox{\sul}}\put(21,2.25){\usebox{\tur}}
  2837.      \put(21,2.25){\usebox{\sbl}}\put(21,2.25){\usebox{\sbr}}
  2838.      \put(21,3.25){\usebox{\rbl}}\put(22,-2.75){\usebox{\sul}}
  2839.      \put(22,-2.75){\usebox{\sur}}\put(22,-2.75){\usebox{\cbl}}
  2840.      \put(22,-2.75){\usebox{\sbr}}\put(22,-1.75){\usebox{\sss}}
  2841.      \put(22,-0.75){\usebox{\sss}}\put(22,0.25){\usebox{\sss}}
  2842.      \put(22,1.25){\usebox{\turr}}\put(22,1.25){\usebox{\sul}}
  2843.      \put(22,1.25){\usebox{\sbl}}\put(22,2.25){\usebox{\rbl}}
  2844.      \put(23,-2.75){\usebox{\sul}}\put(23,-2.75){\usebox{\sur}}
  2845.      \put(23,-2.75){\usebox{\sbl}}\put(23,-2.75){\usebox{\cbr}}
  2846.      \put(23,-1.75){\usebox{\sss}}\put(23,-0.75){\usebox{\turr}}
  2847.      \put(23,-0.75){\usebox{\sul}}\put(23,-0.75){\usebox{\sbl}}
  2848.      \put(23,0.25){\usebox{\rbbl}}
  2849.      \sbox{\sss}{}
  2850.      \sbox{\sul}{}\sbox{\sur}{}\sbox{\sbr}{}\sbox{\sbl}{}
  2851.      \sbox{\cul}{}\sbox{\cur}{}\sbox{\cbr}{}\sbox{\cbl}{}
  2852.      \sbox{\tul}{}\sbox{\tur}{}\sbox{\tbr}{}\sbox{\tbl}{}
  2853.      \sbox{\rul}{}\sbox{\rur}{}\sbox{\rbr}{}\sbox{\rbl}{}
  2854.      \sbox{\tuul}{}\sbox{\tuur}{}\sbox{\tbbl}{}\sbox{\tbbr}{}
  2855.      \sbox{\tull}{}\sbox{\turr}{}\sbox{\tbll}{}\sbox{\tbrr}{}
  2856.      \sbox{\ruul}{}\sbox{\ruur}{}\sbox{\rbbl}{}\sbox{\rbbr}{}
  2857.      \sbox{\rull}{}\sbox{\rurr}{}\sbox{\rbll}{}\sbox{\rbrr}{}
  2858.     \end{picture}}
  2859.   \end{picture}
  2860.  \end{center}
  2861.  \caption{Bitmap and Continuous Character.}
  2862.  \label{bitmapandcontinuouscharacter}
  2863. \end{figure}
  2864.  
  2865. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2866.  
  2867. \section{The \LLaTeX\ Interface}
  2868. \typeout{3 The [La]TeX Interface}
  2869. \label{thelatexinterface}
  2870.  
  2871. The next challenge is to make \LLaTeX\ understand the output of a japanese text 
  2872. editor. There seems to be three ways of achieving this. First, one can modify 
  2873. the input routines of \TeX\ and recompile it. This is the approach used by 
  2874. J\TeX\ and \mbox{ASCII-j\TeX}. For the reasons mentioned in 
  2875. Subsection~\ref{whyjemtex}, I do not want to get into rebuilding \TeX. 
  2876. A second possibility is to write macros to have \TeX\ understand japanese. 
  2877. Unfortunately, I do not have the expertise to do that. 
  2878.  
  2879. The third possibility is to write a preprocessor to transform any japanese 
  2880. document into a standard \LLaTeX\ one. And I do know enough about japanese and 
  2881. \TeX\ to accomplish this. This important decision has several consequences. If 
  2882. I am to have the power of any programming language available somewhere in the 
  2883. chain from a japanese text to a final \LLaTeX\ document, I might as well fully 
  2884. exploit that power. As much as possible of the work should be done by the 
  2885. compiled preprocessor, keeping the necessary interpreted \LLaTeX\ macros simple 
  2886. and fast. This philosophy is present in many aspects of my work. 
  2887.  
  2888. \newpage %improve a bad page break
  2889.  
  2890. The \JemTeX\ preprocessor deals with the following issues:
  2891. \begin{itemize}
  2892.  \item Loading and calling \JemTeX\ fonts.
  2893.  \item Japanese hyphenation.
  2894.  \item Japanese spacing.
  2895. \end{itemize}
  2896.  
  2897. The next subsections will discuss these topics and related subjects, before 
  2898. eventually taking up the actual operation of the preprocessor. 
  2899.  
  2900. \subsection{Japanese Encodings}
  2901. \label{japaneseencodings}
  2902.  
  2903. The reasonable thing to do at this point is to look into how japanese is 
  2904. represented by a japanese text editor. The first method I came across is the 
  2905. Japanese Industrial Standard (JIS). Unfortunately, my japanese text editor is 
  2906. very unreliable in JIS mode and this is why I never use it in this mode. I also 
  2907. do not know exactly how JIS works, but I do know that it involves escape 
  2908. sequences. I will be happy to support it in future versions of \JemTeX\, if 
  2909. users express that need and if somebody gives me more information about it. 
  2910.  
  2911. \label{euc}
  2912.  
  2913. The second method is the Extended UNIX Code (EUC). I like it because it is the 
  2914. only encoding that my japanese text editor handles reliably. Each japanese 
  2915. character is represented by a pair of ASCII characters in the range 
  2916. $[161,\ldots,254]$. Given an EUC character $(x,y)$, its position in the JIS~24 
  2917. dot font is simply: 
  2918.            \[ 94 \times ( x - 161 ) + ( y - 161 ) + 1 \]
  2919.  
  2920. \label{mskanji}
  2921.  
  2922. A third method is the \mbox{MS-kanji} (\mbox{Shift-JIS}) code which is very 
  2923. popular in the DOS world. As for EUC, each japanese character is represented by 
  2924. a pair of ASCII characters. The first character is always in the range 
  2925. $[129,\ldots,159,224,\ldots,234]$ and the second character is always in the 
  2926. range $[64,\ldots,126,128,\ldots,252]$. Given an \mbox{MS-kanji} character, 
  2927. consider the coordinates $(x,y)$ obtained by shifting the upper subranges so 
  2928. that they are consecutive to the lower subranges, the position of the character 
  2929. in the JIS~24 dot font then is: 
  2930.                  \[ 188 \times ( x - 129 ) + ( y - 64 ) + 1 \]
  2931.  
  2932. The preprocessor supports EUC and \mbox{MS-kanji}. You may freely use both in 
  2933. any \JemTeX\ document.
  2934.  
  2935. \subsection{Using Fonts}
  2936. \label{usingfonts}
  2937.  
  2938. This subsection covers all the details having to do with \JemTeX\ fonts. 
  2939.  
  2940. One of the operation carried out by the preprocessor is the replacement of any 
  2941. EUC or \mbox{MS-kanji} character pair by the appropriate font name and symbol 
  2942. number. However, all \JemTeX\ fonts must first be declared in a \LLaTeX\ header 
  2943. before they can be used.              
  2944.  
  2945. \label{header}
  2946.  
  2947. In \LaTeX, a \JemTeX\ font at magstep~$3.0$, say, is loaded with the following 
  2948. command:
  2949. \begin{quote}%Don't put spaces after the next line!
  2950. \begin{verbatim}
  2951. \newfont{\keac}{kanjiac scaled 1728}
  2952. \end{verbatim}
  2953. \end{quote}
  2954. In \TeX, it is loaded with: 
  2955. \begin{quote}%Don't put spaces after the next line!
  2956. \begin{verbatim}
  2957. \font\keac=kanjiac scaled 1728
  2958. \end{verbatim}
  2959. \end{quote}
  2960. The \JemTeX\ font is referred to by \verb"\keac", which is a convenient short 
  2961. name. The number $1728$ comes from $1728 = 1000 \times 1.2^{3.0}$. 
  2962.  
  2963. The preprocessor scans the input file in a first pass and determines the 
  2964. \JemTeX\ fonts needed. It then writes a \LLaTeX\ header to load these fonts, 
  2965. and finally appends the translation obtained by a second pass of the input 
  2966. file. 
  2967.  
  2968. There are at most 128~symbols numbered from~0 to~127 in a \JemTeX\ font. A 
  2969. japanese symbol can be produced in \TeX\ and in \LaTeX\ with the following 
  2970. command: 
  2971. \begin{quote}%Don't put spaces after the next line!
  2972. \begin{verbatim}
  2973. \kk{\keac}{65}
  2974. \end{verbatim}
  2975. \end{quote}
  2976. The preprocessor will supply these automatically for you.
  2977.  
  2978. \subsection{Hyphenation}
  2979. \label{hyphenation}
  2980.  
  2981. In order to produce a right margin which is even, \TeX\ occasionally needs to 
  2982. hyphenate some words. Although it is pretty good at this in english, \TeX\ is 
  2983. incapable of doing it in japanese. Therefore, the preprocessor must supply 
  2984. explicitly all possible hyphenation locations for \TeX. This subsection 
  2985. describes the rules governing this process. 
  2986.  
  2987. \label{hyphen}
  2988.  
  2989. Hyphenation is relevant only between two consecutive characters. Hyphenation in 
  2990. english is obtained with a \verb"\-" command. In japanese, it is obtained with 
  2991. a \verb"\hh" command. The preprocessor will never allow japanese hyphenation 
  2992. between two characters when one or both are roman. But if the two characters 
  2993. are japanese, it may insert a \verb"\hh" command in between. Contrary to 
  2994. english, no - gets appended at the end of a line hyphenated by a \verb"\hh" 
  2995. command. 
  2996.  
  2997. All japanese characters encountered are classified as {\em alphabetical\/} or 
  2998. {\em symbolic}. The alphabetical japanese characters are hiraganas, katakanas, 
  2999. and kanjis. All other japanese characters found in the JIS~24 dot font are 
  3000. symbolic, they include punctuation signs, english, greek, and russian 
  3001. characters. 
  3002.  
  3003. This classification is important because it is difficult for the \JemTeX\ 
  3004. preprocessor to automatically decide where to allow hyphenation when 
  3005. mathematics or foreign languages are concerned. Consequently, the preprocessor 
  3006. never allows hyphenation between two japanese characters when both are 
  3007. symbolic. But if one or both japanese characters are alphabetical, hyphenation 
  3008. may be allowed since one can hyphenate anywhere in japanese, except possibly 
  3009. when punctuation signs are involved. This is not too difficult to handle for 
  3010. the preprocessor. 
  3011.  
  3012. More precisely, the preprocessor will not allow hyphenation before the 
  3013. following japanese punctuation signs .,!?:;$\cdot)]\}\rfloor\rangle$'\,'' and 
  3014. other related closing characters. It will not allow hyphenation either after 
  3015. $([\{\lceil\langle$`\,`` and other related opening characters. 
  3016.  
  3017. \label{preventh}
  3018.  
  3019. If you would like to allow japanese hyphenation where the preprocessor would 
  3020. not allow it, simply put a \verb"\hh" command at the right place in your 
  3021. source file. If the next character is a roman letter, you have to use instead 
  3022. \verb"\hh{}" to prevent confusion. If you would like to prevent the 
  3023. preprocessor from allowing japanese hyphenation, put a \verb"{}" to separate 
  3024. the two consecutive japanese characters in your source file. The preprocessor 
  3025. will not realize that the japanese characters are consecutive anymore, and it 
  3026. will not allow hyphenation. 
  3027.  
  3028. \subsection{Spacing}
  3029. \label{spacing}
  3030.  
  3031. In addition to explicitly telling \TeX\ where japanese hyphenation is allowed, 
  3032. it is also necessary to add space around some japanese characters. For example, 
  3033. this occurs around japanese punctuation signs or at transitions from japanese 
  3034. to roman. Indeed, when \TeX\ comes across the command \verb"\kk{\kaaa}{3}", it 
  3035. has no idea that this is a japanese period. The preprocessor has to give \TeX\ 
  3036. a hand in these cases. Such space must always be added after any hyphenation 
  3037. command \verb"\hh" that may already have been inserted. Otherwise, you risk 
  3038. compromising the flush right margin. 
  3039.  
  3040. \TeX\ normally introduces extra space after a roman period only if a roman 
  3041. space follows it. My japanese text editor does not support spaces while in 
  3042. japanese mode. After all, there are no spaces between words in japanese. This 
  3043. implies that one would have to enter, say, a japanese period, then switch to 
  3044. roman mode, enter a space, and finally switch back to japanese mode. I think 
  3045. this is too cumbersome. Therefore, the preprocessor handles japanese spacing 
  3046. issues without expecting roman spaces anywhere. 
  3047.  
  3048. \label{bigmedium}
  3049.  
  3050. The preprocessor uses three types of space to achieve its goal; a big space 
  3051. with a \verb"\eeee" command, a medium space with a \verb"\eee" command, and a 
  3052. tiny space with a \verb"\ee" command. Only one space is added at one place. For 
  3053. example, if logic calls for a big, a medium, and a medium space between two 
  3054. consecutive characters, only a big one will be inserted by the preprocessor. 
  3055.  
  3056. No space is ever added between two consecutive roman characters, but as soon as 
  3057. one or both characters are japanese, space may become necessary. Let us first 
  3058. look at the mixed case where one japanese character is involved with a roman 
  3059. one. A big space is inserted after all japanese punctuation signs .,!?\ 
  3060. followed by a roman character. A medium space is inserted after all japanese 
  3061. punctuation signs :;$\cdot)]\}\rfloor\rangle$'\,'' followed by a roman 
  3062. character. A medium space is also inserted after all roman characters followed 
  3063. by any of the japanese punctuation signs $\cdot([\{\lceil\langle$`\,``. 
  3064.  
  3065. This takes care of the japanese punctuation spaces. Space is also added for 
  3066. transitions as follows. A medium space is inserted after all roman letters and 
  3067. all roman digits followed by a japanese character, except if that japanese 
  3068. character is any of the following punctuation signs 
  3069. .,!?:;$)]\}\rfloor\rangle$'\,''. A medium space is also inserted after a 
  3070. japanese character followed by a roman letter or a roman digit, except if that 
  3071. japanese character is any of the following punctuation signs 
  3072. $([\{\lceil\langle$`\,``. 
  3073.  
  3074. The case of two consecutive japanese characters is more precise since more 
  3075. information is known. It is also closely related to the previous mixed case. 
  3076. A big space is inserted after all japanese punctuation signs .,!? but not 
  3077. before any of the japanese punctuation signs .,!?$)]\}\rfloor\rangle$'\,''. 
  3078. A medium space is inserted after all japanese punctuation signs 
  3079. :;$\cdot)]\}\rfloor\rangle$'\,'' but not before any of the japanese punctuation 
  3080. signs .,!?:;$)]\}\rfloor\rangle$'\,''. A medium space is also inserted before 
  3081. all the japanese punctuation signs $\cdot([\{\lceil\langle$`\,`` but not after 
  3082. any of the japanese punctuation signs $([\{\lceil\langle$`\,``. 
  3083.  
  3084. This covers all cases of big and medium spaces. If you would like to add space 
  3085. where the preprocessor would not, simply put a \verb"\eeee" command or a 
  3086. \verb"\eee" command at the right place in your source file. Remember to do that 
  3087. only after any hyphenation \verb"\hh" command that you may already have added. 
  3088. If the next character is a roman letter, you have to use instead \verb"\eeee{}" 
  3089. and \verb"\eee{}" to prevent confusion. 
  3090.  
  3091. \label{prevents}
  3092.  
  3093. There are cases where it is preferable to have no extra space after a japanese 
  3094. punctuation sign. For example, when typesetting music with \MuTeX, one does not 
  3095. want extra space if the japanese text is going under the staff. This affects 
  3096. adversary its centering under notes. If you would like to prevent the 
  3097. preprocessor from adding space, try to put a \verb"{}" at the right place to 
  3098. separate the two consecutive japanese characters, or the japanese character 
  3099. from the roman letter or the roman digit. In the few remaining cases where this 
  3100. cannot work, you have to temporarily disable the preprocessor's ability to add 
  3101. spaces. Subsection~\ref{thejem2texpreprocessor} explains how to do this. 
  3102.  
  3103. Tiny space has to do with line breaking, and it is very important. \TeX\ 
  3104. creates a flush right margin by adding extra space between words. However, 
  3105. \TeX\ does not add extra space between characters making up words. Since words 
  3106. in japanese are not separated by spaces, the only opportunity \TeX\ has to add 
  3107. extra space is where big and medium spaces have been added by the preprocessor. 
  3108. Some long japanese sentence may span several lines without any added space. 
  3109. \TeX\ then has no opportunity at all to stretch space in order to generate a 
  3110. flush right margin. 
  3111.  
  3112. To solve this serious problem, a tiny space is added between all consecutive 
  3113. japanese characters, unless some big or medium space has already been inserted. 
  3114. If you should ever want to disable this feature, proceed as before by inserting 
  3115. a \verb"{}" at the right place. This will always work. 
  3116.  
  3117. \subsection{\LLaTeX\ Comments}
  3118. \label{llatexcomments}
  3119.  
  3120. It is quite clear from the previous two subsections that the concept of 
  3121. consecutive characters is very important for the preprocessor. This notion is 
  3122. closely related to \LLaTeX\ comments and end of lines. Let us first discuss the 
  3123. english case before moving on to the japanese one. 
  3124.  
  3125. \newpage %improve a bad page break
  3126.  
  3127. In most circumstances, the character \verb"%" tells \TeX\ to consider the 
  3128. remainder of the current line as a comment and to simply ignore it. Consider 
  3129. the following example:
  3130. \begin{quote}%Don't put spaces after the next line!
  3131. \begin{verbatim}
  3132. A% Here is a TeX comment.
  3133. % Here is a TeX comment.
  3134. B% Here is a TeX comment.
  3135. \end{verbatim}
  3136. \end{quote}
  3137. Even though \verb"A" and \verb"B" are not at all consecutive in the source file 
  3138. because of the comments separating them, they are consecutive as far as \TeX\ 
  3139. is concerned. One could equally well have entered instead \verb"AB" without any 
  3140. comments in between. 
  3141.  
  3142. Consider now another example:
  3143. \begin{quote}%Don't put spaces after the next line!
  3144. \begin{verbatim}
  3145. A
  3146. B
  3147. \end{verbatim}
  3148. \end{quote}
  3149. The characters \verb"A" and \verb"B" are not consecutive because they are 
  3150. separated by an invisible end of line character. \TeX\ treats an end of line 
  3151. character just like if a space was present between \verb"A" and \verb"B". 
  3152.  
  3153. These remarks apply equally well if \verb"A" and \verb"B" were japanese 
  3154. characters. To distinguish both types of end of line, I will say that an end of 
  3155. line is roman if the last character on that line is a roman character. A 
  3156. similar definition holds for japanese end of lines. It is important for the 
  3157. preprocessor to determine if japanese characters are consecutive in order to 
  3158. allow hyphenation and add space correctly. The remainder of this subsection 
  3159. explains how this is achieved. 
  3160.  
  3161. In english, any given input line usually terminates just after a word. The end 
  3162. of line character after that word is replaced by a space by \TeX, which is 
  3163. perfectly acceptable since a space should separate english words. In japanese, 
  3164. there is no space between words, so this end of line character must be removed 
  3165. to prevent \TeX\ from adding space. There are two ways of doing this while 
  3166. using \JemTeX. 
  3167.  
  3168. \label{eol}
  3169.  
  3170. First, you can explicitly put a \verb"%" after all japanese end of lines. This 
  3171. will always work, but it is also tedious. Second, you can let the preprocessor 
  3172. do that for you. However, you should make sure your input lines do end with a 
  3173. japanese character, not a roman space character. This can be a problem because 
  3174. some text editors insist on putting some space characters at the end of each 
  3175. line. You should make sure that your text editor does not do so. Then, the 
  3176. \JemTeX\ preprocessor will have no problem in detecting japanese end of lines 
  3177. and will add all the \verb"%" characters for you. 
  3178.  
  3179. It is also important for the preprocessor to detect \TeX\ comments. The 
  3180. preprocessor recognizes a comment if it starts in the first column of the input 
  3181. file, or if it's a comment that the processor had to insert itself, i.e.\ after 
  3182. a japanese end of line. Therefore, when typing the japanese parts of your 
  3183. source file, you should always use comments starting in the first column and 
  3184. let the preprocessor handle japanese end of lines. This makes it almost certain 
  3185. that the preprocessor will handle hyphenation and spacing correctly. 
  3186.  
  3187. \subsection{\LLaTeX\ Limitations}
  3188. \label{llatexlimitations}
  3189.  
  3190. The previous subsections introduced the different operations that the \JemTeX\ 
  3191. preprocessor must perform in order to produce an acceptable \LLaTeX\ document 
  3192. from a japanese one. Each japanese character is replaced by a command like 
  3193. \verb"\kk{\kaaa}{109}" potentially followed by an hyphenation command 
  3194. \verb"\hh" and potentially followed by a spacing command like \verb"\eeee{}". 
  3195. In the worst case, the two characters representing the original japanese one 
  3196. are replaced by approximately 25~roman characters. 
  3197.  
  3198. This expansion of the source file could cause some problems because there is a 
  3199. limit to the maximum length of an input line that \TeX\ can accept. Here are 
  3200. typical statistics for one big \emTeX\ run: 
  3201. \begin{small}%Don't put spaces after the next line!
  3202. \begin{verbatim}
  3203. Here is how much of TeX's memory you used:
  3204.  181 strings out of 6937
  3205.  1607 string characters out of 28560
  3206.  83907 words of memory out of 262142
  3207.  2145 multiletter control sequences out of 5000
  3208.  20585 words of font info for 79 fonts, out of 81920 for 254
  3209.  15 hyphenation exceptions out of 607
  3210.  13i,8n,21p,321b,309s positions out of 300i,100n,60p,3000b,1000s
  3211. \end{verbatim}
  3212. \end{small}
  3213.  
  3214. The last line (\verb"3000b") tells us that big \emTeX\ can accept input lines 
  3215. of 3000~roman characters. Therefore, big \emTeX\ can handle lines of 
  3216. approximately 120~japanese characters. Most monitors support only~40, 80, or 
  3217. 132~characters per line, that should be enough. However, some japanese text 
  3218. editors display text on separate lines while whole paragraphs are actually kept 
  3219. on one single line internally. You should make sure that your japanese text 
  3220. editor does split its paragraphs into lines of a reasonable size. 
  3221.  
  3222. The only potential remaining problem has to do with the \verb".toc" and 
  3223. \verb".aux" files. These files are created by \LaTeX\ for its personal use and 
  3224. contain such things as chapter names, cross-references, etc. These are always 
  3225. formatted one item per line. If you have a chapter name which is longer than 
  3226. 120~japanese characters, you can split it on several lines in your source file. 
  3227. Then, \LaTeX\ will have no problem with the title itself. But in its first 
  3228. pass, it will create the \verb".toc" and \verb".aux" files which will have a 
  3229. very long line. When \LaTeX\ starts to read the resulting \verb".aux" file on 
  3230. its second pass, it will complain that the line is too long and stop. I think 
  3231. it is unlikely that you will ever have such a long chapter name. But if you do, 
  3232. here is my solution. 
  3233.  
  3234. Suppose your \verb".aux" file contains one long line of japanese text:
  3235. \begin{quote}%Don't put spaces after the next line!
  3236. \begin{verbatim}
  3237. \@writefile{toc}{Very long japanese text.}
  3238. \end{verbatim}
  3239. \end{quote}
  3240. Edit the \verb".aux" file and replace the troublesome line by:
  3241. \begin{quote}%Don't put spaces after the next line!
  3242. \begin{verbatim}
  3243. \@writefile{toc}{\texta \textb \textc \textd}
  3244. \end{verbatim}
  3245. \end{quote}
  3246. And add the following macros to your \LaTeX\ source file:
  3247. \begin{quote}%Don't put spaces after the next line!
  3248. \begin{verbatim}
  3249. \newcommand{\texta}{Very}
  3250. \newcommand{\textb}{long}
  3251. \newcommand{\textc}{japanese}
  3252. \newcommand{\textd}{text.}
  3253. \end{verbatim}
  3254. \end{quote}
  3255. Having done all that, you may now successfully run \LaTeX\ once. 
  3256.  
  3257. Unfortunately, this run will modify your \verb".aux" file again. There are two 
  3258. ways around this. First, you could use the \LaTeX\ command \verb"\nofiles". 
  3259. Secondly, you could edit your \verb".aux" once again. As I already mentioned, 
  3260. it is unlikely that you will ever need to resort to this trick since the 
  3261. current limit of 120~japanese characters is quite reasonable. But if you are 
  3262. curious, that's how you can avoid the problem. 
  3263.  
  3264. \subsection{The {\tt JEM2TEX} Preprocessor}
  3265. \label{thejem2texpreprocessor}
  3266.  
  3267. Given a japanese source file, my program \verb"JEM2TEX" can generate an 
  3268. equivalent \LLaTeX\ source file. You have been supplied with the source and the 
  3269. compressed compiled version of this C program. The only information necessary 
  3270. is the source file name and some parameters. \verb"JEM2TEX" will try the file
  3271. name extensions \verb".jem", \verb".jpn", and \verb".jap" for you so you do not 
  3272. need to specify them. 
  3273.  
  3274. If you simply start \verb"JEM2TEX" without any command line information, it 
  3275. will run in manual mode where you must answer questions interactively 
  3276. throughout the operation. If you specify any command line information, the 
  3277. preprocessor then runs in automatic mode. In addition to specifying the source 
  3278. file name on the command line, you can also supply command line parameters on 
  3279. it. These always begin with a \verb"/" or a \verb"-", and any combination of 
  3280. small and capital letters is acceptable. 
  3281.  
  3282. In automatic mode, a \LaTeX\ document \verb"japanese.jem" with japanese 
  3283. extended EUC characters at magstep~$3.0$, and with spaces to add, and with 
  3284. \verb"%" to add at japanese end of lines is assumed as default. However, you 
  3285. may override or confirm any of these default values with the appropriate 
  3286. command line parameters. The recognized ones are listed in 
  3287. Tables~\ref{spaceparameters}, \ref{japaneseeolparameters}, 
  3288. \ref{encodingparameters}, \ref{fontsizeparameters}, and~\ref{headerparameters}. 
  3289.  
  3290. \begin{table}[htb]
  3291.  \begin{center}
  3292.   \begin{tabular}{ll}
  3293.    \mbox{$\left.\parbox{3cm}{%
  3294.     \verb"/Space" \\
  3295.     \verb"/Extra" \\
  3296.     \verb"/ExtraSpace"}\right\}$}   & Spaces added. \\[5.5mm]
  3297.    \mbox{$\left.\parbox{3cm}{%
  3298.     \verb"/NoSpace" \\
  3299.     \verb"/NoExtra" \\
  3300.     \verb"/NoExtraSpace"}\right\}$} & No spaces added.
  3301.   \end{tabular}
  3302.  \end{center}
  3303.  \caption{Space Parameters.}
  3304.  \label{spaceparameters}
  3305.  \begin{center}
  3306.   \begin{tabular}{ll}
  3307.    \mbox{$\left.\parbox{2.3cm}{%
  3308.     \verb"/EOL" \\
  3309.     \verb"/Percent" \\
  3310.     \verb"/Comment"}\right\}$}   & \verb"%" added. \\[6.5mm]
  3311.    \mbox{$\left.\parbox{2.3cm}{%
  3312.     \verb"/NoEOL" \\
  3313.     \verb"/NoPercent" \\
  3314.     \verb"/NoComment"}\right\}$} & No \verb"%" added.
  3315.   \end{tabular}
  3316.  \end{center}
  3317.  \caption{Japanese EOL Parameters.}
  3318.  \label{japaneseeolparameters}
  3319. \end{table}
  3320.  
  3321. \newpage %improve a bad page break
  3322.  
  3323. \begin{table}[htb]
  3324.  \begin{center}
  3325.   \begin{tabular}{ll}
  3326.    \parbox{2.2cm}{\verb"/EUC"}      & Extended UNIX code. \\[1.5mm]
  3327.    \mbox{$\left.\parbox{2.2cm}{%
  3328.     \verb"/MSkanji" \\
  3329.     \verb"/ShiftJIS"}\right\}$}     & MS-kanji code. \\[2.5mm]
  3330.    \parbox{2.2cm}{\verb"/Extended"} & Extended characters. \\
  3331.    \parbox{2.2cm}{\verb"/Standard"} & Standard characters.
  3332.   \end{tabular}
  3333.  \end{center}
  3334.  \caption{Encoding Parameters.}
  3335.  \label{encodingparameters}
  3336.  \begin{center}
  3337.   \begin{tabular}{ll}
  3338.    \mbox{$\left.\parbox{3cm}{%
  3339.     \verb"/1000  /0.0  /0" \\
  3340.     \verb"/1095  /0.5" \\
  3341.     \verb"/1200  /1.0  /1" \\
  3342.     \verb"/1440  /2.0  /2" \\
  3343.     \verb"/1728  /3.0  /3" \\
  3344.     \verb"/2074  /4.0  /4" \\
  3345.     \verb"/2488  /5.0  /5"}\right\}$} & Initial japanese font size.
  3346.   \end{tabular}
  3347.  \end{center}
  3348.  \caption{Font Size Parameters.}
  3349.  \label{fontsizeparameters}
  3350.  \begin{center}
  3351.   \begin{tabular}{ll}
  3352.    \parbox{1.5cm}{\verb"/LaTeX"} & \LaTeX\ header. \\[1mm]
  3353.    \mbox{$\left.\parbox{1.5cm}{%
  3354.     \verb"/TeX" \\
  3355.     \verb"/MuTeX"}\right\}$}     & \TeX\ header.
  3356.   \end{tabular}
  3357.  \end{center}
  3358.  \caption{Header Parameters.}
  3359.  \label{headerparameters}
  3360. \end{table}
  3361.  
  3362. For music, I usually use only hiraganas and katakanas. The following is 
  3363. appropriate since these japanese characters are simple:
  3364. \begin{quote}%Don't put spaces after the next line!
  3365. \begin{verbatim}
  3366. jem2tex anri /MuTeX /NoEOL /NoSpace /Standard /EUC /0.5
  3367. \end{verbatim} 
  3368. \end{quote} 
  3369. For a letter with complicated kanjis, I would rather use:
  3370. \begin{quote}%Don't put spaces after the next line!
  3371. \begin{verbatim}
  3372. jem2tex yuka /LaTeX /EOL /Space /Extended /EUC /2
  3373. \end{verbatim} 
  3374. \end{quote} 
  3375. It is also possible to change these parameters at run-time with \TeX\ comments. 
  3376. Here is an example:
  3377. \begin{quote}%Don't put spaces after the next line!
  3378. \begin{verbatim}
  3379. % jem2tex /LaTeX /Space /EOL /MSkanji /1440
  3380. \end{verbatim} 
  3381. \end{quote} 
  3382.  
  3383. The preprocessor expects the \verb"%" to be the first character of the line as 
  3384. explained in Subsection~\ref{llatexcomments}. Then one of the keywords 
  3385. \verb"jem2tex", \verb"jpn2tex", or~\verb"jap2tex" must follow immediately, or 
  3386. after some spaces. Valid parameters are then scanned. The preprocessor will 
  3387. produce comments in the \LLaTeX\ file as its status is changed. An invalid 
  3388. parameter stops the current scan for parameters, but does not terminate the 
  3389. preprocessor's operation. 
  3390.  
  3391. \label{nospaces}
  3392. \label{fonts}
  3393.  
  3394. Run-time parameters can be used to change japanese font sizes according to 
  3395. environments and to temporarily disable space insertion. I also always put in 
  3396. the first line of my \verb".jem" files the initial parameters. Here is an 
  3397. example: 
  3398. \begin{quote}
  3399. \verb"%JEM2TEX /Space /EOL /Extended /EUC /LaTeX" \\
  3400. \verb"\documentstyle[12pt]{tegami}" \\
  3401. \verb"\begin{document}" \\
  3402. \verb"\begin{large}" \\
  3403. \verb"%JEM2TEX /1440" \\
  3404. $\vdots$ \\
  3405. \verb"Here is some japanese text" \\
  3406. \verb"%JEM2TEX /1000" \\
  3407. \verb"\footnote{Japanese footnote.}%" \\
  3408. \verb"%JEM2TEX /1440" \\
  3409. \verb"with a footnote showing the font size change." \\
  3410. $\vdots$ \\
  3411. \verb"\end{large}" \\
  3412. \verb"\end{document}"
  3413. \end{quote}
  3414.  
  3415. \label{12points}
  3416.  
  3417. As mentioned in the \LaTeX\ book about loading fonts, using a japanese font 
  3418. doesn't change style parameters like \verb"\baselineskip". Make sure the 
  3419. appropriate size changing command is active when a japanese font is used. In 
  3420. the previous example, the \verb"/1440" indicates that magstep~$2.0$ is desired 
  3421. for the japanese fonts. The command \verb"large" insures that \LaTeX\ is aware 
  3422. of the proper line spacing needed while processing these japanese characters. 
  3423. The command \verb"large" also tells \LaTeX\ to use roman characters of a size 
  3424. comparable to the japanese ones. I usually use \verb"12pt" document styles and 
  3425. Table~\ref{12ptfontsizes} shows the appropriate font sizes for them. 
  3426.  
  3427. \begin{table}[htb]
  3428.  \begin{center}
  3429.   \begin{tabular}{l|l}
  3430.    \verb"\footnotesize" & \verb"/1000" \\
  3431.    \verb"\small"        & \verb"/1095" \\
  3432.    \verb"\normalsize"   & \verb"/1200" \\
  3433.    \verb"\large"        & \verb"/1440" \\
  3434.    \verb"\Large"        & \verb"/1728" \\
  3435.    \verb"\LARGE"        & \verb"/2074" \\
  3436.    \verb"\huge"         & \verb"/2488"
  3437.   \end{tabular}
  3438.  \end{center}
  3439.  \caption{{\tt 12pt} Font Sizes.}
  3440.  \label{12ptfontsizes}
  3441. \end{table}
  3442.  
  3443. Finally, note the \verb"%" at the end of the \verb"\footnote" line in the last 
  3444. example. The filter will not append it for you since this is a roman end of the 
  3445. line. But this \verb"%" is essential to prevent \LLaTeX\ from inserting some 
  3446. inter-word space between the footnote number and the following japanese 
  3447. character. 
  3448.  
  3449. \subsection{Font Tables}
  3450. \label{fonttables}
  3451.  
  3452. I occasionally come across a japanese character that my japanese text editor 
  3453. cannot insert in the text for me. This is usually the result of an incomplete 
  3454. kanji lookup dictionary or a consequence of wanting to use extended JIS~24 
  3455. characters. In such cases, one has to enter the character by hand. There are a 
  3456. number of ways to do that. 
  3457.  
  3458. Your japanese text editor may support character entry by \mbox{MS-kanji} or EUC 
  3459. numbers. That is certainly the most preferable solution. If not, you could use 
  3460. \mbox{Alt-Combinations} under a word processor to enter the arbitrary 
  3461. characters in your text. Modifying the source file in these fashions is the 
  3462. best approach. 
  3463.  
  3464. You could also choose to leave a few blank spaces at the right places in the 
  3465. source file, process it with \verb"JEM2TEX", and then insert a few \verb"\kk" 
  3466. macros with the proper kanji fonts and symbol numbers. Unfortunately, such a 
  3467. patch must be performed every time the original source file is modified and 
  3468. processed by \verb"JEM2TEX". This is why I never proceed this way. 
  3469.  
  3470. Because of this foreseeable occasional need, I thought it would be useful to 
  3471. create font tables like the ones found in Appendix~F of the {\TeX}book. They 
  3472. would have to mention the JIS~24 dot font numbers along with the EUC number 
  3473. pairs. I designed such tables at magstep~$3.0$ and managed to squeeze three 
  3474. \JemTeX\ fonts per page.
  3475.  
  3476. My Pascal program \verb"FONTABLE" creates a 60~Kb japanese file 
  3477. \verb"fontable.jem" for you in the current directory. Then, simply process 
  3478. that file with \verb"JEM2TEX" in automatic mode to eventually obtain 
  3479. \verb"fontable.tex". Finally, complete the process with big \LaTeX\, which 
  3480. should yield a twenty page document ready for previewing and printing. 
  3481.  
  3482. You may have to divide and process this document in smaller pieces for several 
  3483. reasons. Perhaps you only have a small version of \TeX. Perhaps your printer 
  3484. driver has difficulty processing it. This can be caused by your computer 
  3485. lacking memory, but is more likely nowadays to be caused by a primitive printer 
  3486. driver lacking a decent memory management system. Perhaps you are using a laser 
  3487. printer with only 1~Mb of memory. Note that dot matrix printers do not suffer 
  3488. from such lack of memory problems since they have very little memory. Their 
  3489. language is very verbose since the fonts are explicitly supplied each time they 
  3490. are used. 
  3491.  
  3492. If needed, you should divide the file \verb"fontable.jem", but not the file 
  3493. \verb"fontable.tex" unless you also modify the individual headers to avoid 
  3494. loading a lot of fonts for nothing. I think the former approach is easier and 
  3495. less error prone. If splitting \verb"fontable.jem" still does not work for you, 
  3496. talk to me! 
  3497.  
  3498. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  3499.  
  3500. \section{\JemTeX\ Quick Reference}
  3501. \typeout{4 JemTeX Quick Reference}
  3502. \label{jemtexquickreference}
  3503. \vspace{1cm}
  3504. \begin{quote}%Don't put spaces after the next line!
  3505. \begin{verbatim}
  3506. MF &cm kanjiaa >NUL:
  3507. \end{verbatim}
  3508. \end{quote}
  3509. \begin{center}
  3510.                  METAFONT Proof Mode (page~\pageref{mftproof})
  3511. \end{center}
  3512. \vspace{1cm}
  3513. \begin{quote}
  3514. \begin{small}%Don't put spaces after the next line!
  3515. \begin{verbatim}
  3516. MF &cm \mode:=epsonfx; \mag:=magstep(0.0); \input kanjiaa.mf
  3517. \end{verbatim}
  3518. \end{small}
  3519. \end{quote}
  3520. \begin{center}
  3521.               METAFONT Standard Mode (page~\pageref{mftstandard})
  3522. \end{center}
  3523. \vspace{1cm}
  3524. \begin{center}
  3525.  \begin{tabular}{l|ccccccc}
  3526.   Font Size  & 1000 & 1095 & 1200 & 1440 & 1728 & 2074 & 2488 \\ \hline 
  3527.   Disk Space &  558 &  622 &  680 &  819 & 1008 & 1228 & 1530 
  3528.  \end{tabular}
  3529. \end{center}                                                          
  3530. \begin{center}
  3531.                           Space Requirements (240DPI)
  3532. \end{center}
  3533. \newpage
  3534. \vspace*{\fill}
  3535. \begin{center}
  3536.  \begin{tabular}{ll}
  3537.   \mbox{$\left.\parbox{4.6cm}{%
  3538.    \verb"/FixedWidth" \\
  3539.    \verb"/FixedX" \\
  3540.    \verb"/NoProportionalWidth" \\
  3541.    \verb"/NoProportionalX"}\right\}$} & 
  3542.     Fixed width (page~\pageref{widthheight}). \\[8mm]
  3543.   \mbox{$\left.\parbox{4.6cm}{%
  3544.    \verb"/NoFixedWidth" \\
  3545.    \verb"/NoFixedX" \\
  3546.    \verb"/ProportionalWidth" \\
  3547.    \verb"/ProportionalX"}\right\}$}   & 
  3548.     Minimized width (page~\pageref{widthheight}). \\[8mm]
  3549.   \mbox{$\left.\parbox{4.6cm}{%
  3550.    \verb"/FixedHeight" \\
  3551.    \verb"/FixedY" \\
  3552.    \verb"/NoProportionalHeight" \\
  3553.    \verb"/NoProportionalY"}\right\}$} & 
  3554.     Fixed height (page~\pageref{widthheight}). \\[8mm]
  3555.   \mbox{$\left.\parbox{4.6cm}{%
  3556.    \verb"/NoFixedHeight" \\
  3557.    \verb"/NoFixedY" \\
  3558.    \verb"/ProportionalHeight" \\
  3559.    \verb"/ProportionalY"}\right\}$}   & 
  3560.     Minimized height (page~\pageref{widthheight}). \\[8mm]
  3561.   \parbox{4.6cm}{\verb"/Standard"}    & 
  3562.    Standard positioning (page~\pageref{positioning}). \\
  3563.   \parbox{4.6cm}{\verb"/Dictionary"}  & 
  3564.    Dictionary positioning (page~\pageref{positioning}). \\
  3565.   \parbox{4.6cm}{\verb"/Batch"}       & 
  3566.    Batch mode (page~\pageref{batch}).
  3567.  \end{tabular}
  3568. \end{center}
  3569. \vspace{3mm}
  3570. \begin{center}
  3571.                            \verb"JIS2MF" Parameters
  3572. \end{center}
  3573. \vspace*{\fill}
  3574. \newpage
  3575. \vspace*{\fill}
  3576. \begin{center} 
  3577.  \begin{tabular}{ll} 
  3578.   \parbox{3cm}{\verb"/EUC"}          & 
  3579.    Extended UNIX code (page~\pageref{euc}). \\[1mm]
  3580.   \mbox{$\left.\parbox{3cm}{% 
  3581.    \verb"/MSkanji" \\ 
  3582.    \verb"/ShiftJIS"}\right\}$}       & 
  3583.     MS-kanji code (page~\pageref{mskanji}). \\[3mm]
  3584.   \parbox{3cm}{\verb"/Extended"}     & 
  3585.    Extended characters (page~\pageref{extended}). \\
  3586.   \parbox{3cm}{\verb"/Standard"}     & 
  3587.    Standard characters (page~\pageref{standard}). \\
  3588.   \parbox{3cm}{\verb"/LaTeX"}        & 
  3589.    \LaTeX\ header (page~\pageref{header}). \\[1.5mm]
  3590.   \mbox{$\left.\parbox{3cm}{% 
  3591.    \verb"/TeX" \\ 
  3592.    \verb"/MuTeX"}\right\}$}          & 
  3593.     \TeX\ header (page~\pageref{header}). \\[4mm] 
  3594.   \mbox{$\left.\parbox{3cm}{% 
  3595.    \verb"/Space" \\ 
  3596.    \verb"/Extra" \\ 
  3597.    \verb"/ExtraSpace"}\right\}$}     & 
  3598.     Spaces added (page~\pageref{spacing}). \\[6mm] 
  3599.   \mbox{$\left.\parbox{3cm}{% 
  3600.    \verb"/NoSpace" \\ 
  3601.    \verb"/NoExtra" \\ 
  3602.    \verb"/NoExtraSpace"}\right\}$}   & 
  3603.     No spaces added (page~\pageref{nospaces}). \\[6mm] 
  3604.   \mbox{$\left.\parbox{3cm}{% 
  3605.    \verb"/EOL" \\ 
  3606.    \verb"/Percent" \\ 
  3607.    \verb"/Comment"}\right\}$}        & 
  3608.     \verb"%" added (page~\pageref{eol}). \\[6mm] 
  3609.   \mbox{$\left.\parbox{3cm}{% 
  3610.    \verb"/NoEOL" \\ 
  3611.    \verb"/NoPercent" \\ 
  3612.    \verb"/NoComment"}\right\}$}      & 
  3613.     No \verb"%" added (page~\pageref{eol}). \\[6mm] 
  3614.   \mbox{$\left.\parbox{3cm}{% 
  3615.    \verb"/1000  /0.0  /0" \\ 
  3616.    \verb"/1095  /0.5" \\ 
  3617.    \verb"/1200  /1.0  /1" \\ 
  3618.    \verb"/1440  /2.0  /2" \\ 
  3619.    \verb"/1728  /3.0  /3" \\ 
  3620.    \verb"/2074  /4.0  /4" \\ 
  3621.    \verb"/2488  /5.0  /5"}\right\}$} & 
  3622.     Initial japanese font size (page~\pageref{fonts}). 
  3623.  \end{tabular} 
  3624. \end{center} 
  3625. \vspace{3mm}
  3626. \begin{center} 
  3627.                            \verb"JEM2TEX" Parameters
  3628. \end{center} 
  3629. \vspace*{\fill}
  3630. \newpage
  3631. \vspace*{\fill}
  3632. \begin{center} 
  3633.  \begin{tabular}{l|l}
  3634.   \verb"\hh"   & Allow japanese hyphenation (page~\pageref{hyphen}). \\
  3635.   \verb"\eeee" & Insert big space (page~\pageref{bigmedium}). \\
  3636.   \verb"\eee"  & Insert medium space (page~\pageref{bigmedium}). \\
  3637.   \verb"{}"    & Prevent hyphenation (page~\pageref{preventh}) and space 
  3638.                  insertion (page~\pageref{prevents}).
  3639.  \end{tabular}
  3640. \end{center} 
  3641. \begin{center} 
  3642.                                   Quick Fixes
  3643. \end{center} 
  3644. \vspace{1cm}
  3645. \begin{center}
  3646.  \begin{tabular}{l|l}
  3647.   \verb"\footnotesize" & \verb"/1000" \\
  3648.   \verb"\small"        & \verb"/1095" \\
  3649.   \verb"\normalsize"   & \verb"/1200" \\
  3650.   \verb"\large"        & \verb"/1440" \\
  3651.   \verb"\Large"        & \verb"/1728" \\
  3652.   \verb"\LARGE"        & \verb"/2074" \\
  3653.   \verb"\huge"         & \verb"/2488"
  3654.  \end{tabular}
  3655. \end{center}
  3656. \begin{center}
  3657.                 \verb"12pt" Font Sizes (page~\pageref{12points})
  3658. \end{center}
  3659. \vspace*{\fill}
  3660. \end{document}
  3661.