summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/ptex/ptex-base/jfm.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/ptex/ptex-base/jfm.tex')
-rw-r--r--Master/texmf-dist/doc/ptex/ptex-base/jfm.tex133
1 files changed, 102 insertions, 31 deletions
diff --git a/Master/texmf-dist/doc/ptex/ptex-base/jfm.tex b/Master/texmf-dist/doc/ptex/ptex-base/jfm.tex
index f46e63a3331..ecae5460628 100644
--- a/Master/texmf-dist/doc/ptex/ptex-base/jfm.tex
+++ b/Master/texmf-dist/doc/ptex/ptex-base/jfm.tex
@@ -3,43 +3,73 @@
\setlength{\oddsidemargin}{.4in}
\setlength{\evensidemargin}{.4in}
\pagestyle{headings}
+\title{JFM$B%U%!%$%k%U%)!<%^%C%H(B}
+\author{ASCII Corporation \& Japanese \TeX\ Development Community}
\begin{document}
+\maketitle
+
\section{JFM file format}
-%JFM$B%U%!%$%k%U%)!<%^%C%H(B
JFM$B%U%!%$%k$N%U%)!<%^%C%H$O!"(B
$B4pK\E*$K$O(BTFM$B%U%!%$%k$N%U%)!<%^%C%H$K=`5r$7$F$*$j!"(B
TFM$B$r3HD%$7$?7A$K$J$C$F$$$k!#(B
$B$3$3$G$O!"<g$K$=$N3HD%ItJ,$K$D$$$F@bL@$r9T$$!"(B
$B$=$NB>$NItJ,$K4X$7$F$O!"(B
\TeX\ the program$BEy$N(BTFM$B$N@bL@$r;2>H$7$F$b$i$$$?$$!#(B
+
+$B$3$NJ8=q$O$b$H$b$H3t<02q<R%"%9%-!<$,3+H/$7$?(Bp\TeX{}$B$KIUB0$7$F$$$?(B
+$B$b$N$G$"$k!#(B2018$BG/$KF|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$O(BJFM$B%U%)!<%^%C%H$r(B
+$B3HD%$7$?$?$a!"$=$NFbMF$K$D$$$FDI5-$7$F$"$k!#(B
+
\subsection{JFM$B%U%!%$%k$N9=@.(B}
JFM$B%U%!%$%kA4BN$N9=@.$O!"(B
-Table\ref{$B9=@.(B}(\pageref{$B9=@.(B}$B%Z!<%8(B)$B$K<($9$H$*$j$G$"$k!#(B \\
+Table~\ref{$B9=@.(B}(\pageref{$B9=@.(B}$B%Z!<%8(B)$B$K<($9$H$*$j$G$"$k!#(B \\
$B$3$3$G(BTFM$B$H0[$J$k$N$O<!$NE@$G$"$k!#(B
\begin{enumerate}
\item {\it char\_type}$B$N%F!<%V%k$,IU$12C$($i$l$?$3$H!#(B
-\item {\it ligature}$B$N49$o$j$K(B{\it glue}$B$N%F!<%V%k$,@_$1$i$l$?$3$H!#(B
+\item {\it exten}$B$N49$o$j$K(B{\it glue}$B$N%F!<%V%k$,@_$1$i$l$?$3$H!#(B
\item 2$B$K4XO"$7$F!"(B{\it lig\_kern}$B$+$i(B{\it glue\_kern}$B%F!<%V%k$XJQ99$5$l$?$3$H!#(B
\item $B$3$l$i$KH<$$!"@hF,$N%U%!%$%kFb$N3FItJ,$r5,Dj$9$k(B
$B%Q%i%a!<%?I=$,JQ99$5$l$F$$$k!#(B
$B$^$?!"%*%j%8%J%k$N(BTFM$B$H$N6hJL$N$?$a$K(Bid$B$rIU2C$7$F$$$k!#(B
\end{enumerate}
+$B:G=i$N(B7$B%o!<%I$OH>%o!<%I!J!a(B2$B%P%$%H!K$:$D$K6h@Z$i$l!"(B
+JFM$B%U%!%$%k$r9=@.$9$k(B14$B8D$NMWAG$N%5%$%:$,<}$a$i$l$F$$$k!#(B
+$B$3$l$i$NCM$O!"$9$Y$F(B$2^{15}$$B$h$j$b>.$5$$HsIi$NCM$G!"(B
+$B<!$N>r7o$rK~$?$7$F$$$J$1$l$P$J$i$J$$!'(B
+\begin{eqnarray*}
+bc &=& 0 \\
+lf &=& 7 + lh + (ec - bc + 1) + nw + nh + nd + ni + nl + nk + ng + np
+\end{eqnarray*}
\subsection{char\_type}
$B:#2s$N(B\TeX $B$NF|K\8l2=$K$*$$$F$O!"F10l$NJ8;zI}!"(B
$B9b$5A08e$KA^F~$5$l$k%0%k!<Ey!"$=$NJ8;z$,;}$DB0@-A4$F$,(B
$BF1$8$b$N$r!"(B1$B$D$N(B{\it `char\_type'}$B$H$7$F1Q;z%U%)%s%H$N(B1$B%-%c%i%/%?$H(B
$BF1MM$K$7$F07$&$h$&$K$7$F$$$k!#(B
-$B$=$3$G!"4A;z$N(B2$B%P%$%H%3!<%I$H$3$N(B{\it char\_type}$B$H$NBP1~IU$1$r(B
+$B$=$3$G!"4A;z$NJ8;z%3!<%I$H$3$N(B{\it char\_type}$B$H$NBP1~IU$1$r(B
$B$3$N%F!<%V%k$r;H$C$F9T$&!#(B
-$B$3$N%F!<%V%k$N3F%(%s%H%j!<$O(B1$B%o!<%I$G9=@.$5$l!"(B
-$B>e0LH>%o!<%I$K4A;z%3!<%I!"2<0LH>%o!<%I$K(B{\it char\_type}$B$r;}$A!"(B
+$B$3$N%F!<%V%k$N3F%(%s%H%j!<$O(B1$B%o!<%I!J!a(B4$B%P%$%H!K$G9=@.$5$l!"(B
+$B>e0L(B3$B%P%$%H$K4A;z%3!<%I!"2<0L(B1$B%P%$%H$K%-%c%i%/%?%?%$%W$r;}$D(B
+\footnote{$B$3$l$,F|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$K$h$C$F(B2018$BG/(B1$B7n$KF3F~$5$l$?(B
+$B?7;EMM$G$"$k!(%*%j%8%J%k$N%"%9%-!<$K$h$k;EMM$G$O!"!V>e0LH>%o!<%I$K(B
+$B4A;z%3!<%I!"2<0LH>%o!<%I$K%-%c%i%/%?%?%$%W$r;}$D!W$H$$$&$b$N$G$"$C$?!#(B
+p\TeX{}$B$G$OFbIt=hM}$K(BJIS$B$,MQ$$$i$l!"(BJFM$B$G07$&4A;z%3!<%I$O(B2$B%P%$%H$,(B
+$B>e8B$@$C$?$?$a==J,$G$"$C$?$,!"(Bup\TeX{}$B$G(BBMP$BD6$($N(B3$B%P%$%H$NJ8;z$r(B
+JFM$B$G07$&$3$H$rL\E*$K;EMM3HD%$7$?!#(B}$B!#(B
+$B4A;z%3!<%I$O!"$=$l$,(B16$B?J?t(B24bit$B!J(B3$B%P%$%H!K$G(B0xABcdef$B$HI=$5$l$k$H$-!"(B
+{\it char\_type}$B%F!<%V%k$K$O(B{\tt cd ef AB}$B$H$7$F3JG<$5$l$k(B
+\footnote{$B%*%j%8%J%k$N;EMM$G$O!"2<0LH>%o!<%I$K%-%c%i%/%?%?%$%W$r(B
+$B3JG<$7$F$$$?$,!"%-%c%i%/%?%?%$%W$N>e8B$O(B255$B$J$N$G!"<B$O$=$N>e0L%P%$%H$O(B
+$B>o$K(B{\tt 00}$B$G$"$C$?!#$3$N$3$H$rMxMQ$7!"F|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$N(B
+$B?7;EMM$G$O!V$3$N(B{\tt 00}$B$,<B$O4A;z%3!<%I$N>e0L$@$C$?!W$H$$$&$3$H$K(B
+$B$7$F!"(B3$B%P%$%H!J(BU+10000$B0J>e!K$N4A;z%3!<%I$GITB-$9$k(B1$B%P%$%H$r3NJ]$7$?!#(B
+$B$3$l$K$h$j!"?7;EMM$O%*%j%8%J%k$N;EMM$N>e0L8_49$G$"$k$3$H$,J]>Z$5$l$F$$$k!#(B}$B!#(B
$B%F!<%V%kFb$K$O%3!<%I$NCM$N=gHV$K<}$a$i$l$F$$$J$1$l$P$J$i$J$$!#(B
$B$^$?$3$N%F!<%V%k$N@hF,$K$O!"%G%U%)%k%H$N%$%s%G%C%/%9$H$7$F(B
-$B4A;z%3!<%I5Z$S(B{\it char\_type}$B$N9`$,(B0$B$N$b$N$,!"(B
+$B4A;z%3!<%I5Z$S%-%c%i%/%?%?%$%W$N9`$,(B0$B$N$b$N$,!"(B
$BI,$:(B1$B$DB8:_$7$J$1$l$P$J$i$:!"$3$N%F!<%V%k$KEPO?$5$l$F$$$J$$J8;z$O!"(B
-$char\_type = 0$$B$H$7$F07$&!#(B
+$B%-%c%i%/%?%?%$%W$,(B0$B$H$7$F07$&!#(B
$B$D$^$j!"$3$N%G%U%)%k%H0J30$NJ8;zI}!"%+!<%sEy$NB0@-$r;}$D%-%c%i%/%?(B
$B$N%3!<%I$H%?%$%W$,(B2$BHVL\0J9_$N%(%s%H%j!<$H$7$FB8:_$7$J$1$l$P$J$i$J$$!#(B
@@ -49,55 +79,96 @@ $char\_type = 0$$B$H$7$F07$&!#(B
$B3F%F!<%V%k$X$N%$%s%G%C%/%9Ey$N>pJs$r<!$N=gHV$G%Q%C%-%s%0(B
$B$7$F(B1$B%o!<%I$K<}$a$F$"$k!#(B
\begin{description}
-\item{width\_index(8bits)} width\_table $B$X$N%$%s%G%C%/%9(B
-\item{height\_index(4bits)} height\_table $B$X$N%$%s%G%C%/%9(B
-\item{depth\_index(4bits)} depth\_table $B$X$N%$%s%G%C%/%9(B
-\item{italic\_index(6bits)} italic\_table $B$X$N%$%s%G%C%/%9(B
-\item{tag(2bits)}
+\item{{\it width\_index} (8bits)} width\_table$B$X$N%$%s%G%C%/%9(B
+\item{{\it height\_index} (4bits)} height\_table$B$X$N%$%s%G%C%/%9(B
+\item{{\it depth\_index} (4bits)} depth\_table$B$X$N%$%s%G%C%/%9(B
+\item{{\it italic\_index} (6bits)} italic\_table$B$X$N%$%s%G%C%/%9(B
+\item{{\it tag} (2bits)}
\begin{description}
- \item{tag=0} {\it remainder}$B$N9`$OL58z$G$"$j;HMQ$7$J$$$3$H$r<($9!#(B
- \item{tag=1} {\it glue\_kern}$B%W%m%0%i%`$,(B{\it glue\_kern[remainder]}
- $B$+$i$K<}$a$i$l$F$$$k$3$H$r<($9!#(B
- \item{tag=2$B!"(B3} $B;HMQ$7$J$$!#(B
+ \item{${\it tag}=0$} {\it remainder}$B$N9`$OL58z$G$"$j(B
+ $B;HMQ$7$J$$$3$H$r<($9!#(B
+ \item{${\it tag}=1$} {\it remainder}$B$N9`$,(B{\it glue\_kern}$B$X$NM-8z$J(B
+ $B%$%s%G%C%/%9$G$"$k$3$H$r<($9!#(B
+ \item{${\it tag}=2, 3$} JFM$B$G$O;HMQ$7$F$$$J$$!#(B
\end{description}
-\item{remainder(8bits)}
+\item{remainder (8bits)}
\end{description}
-%
+JFM$B$G$O(B$bc$$B$OI,$:%<%m(B\footnote{$BA0@a$K$"$kDL$j!"4A;z%3!<%I5Z$S(B
+$B%-%c%i%/%?%?%$%W$N9`$,(B0$B$N$b$N$,I,$:(B1$B$DB8:_$9$k$?$a!#(B}$B$J$N$G!"(B
+1$B$D$N(BJFM$B$K4^$^$l$k(B{\it char\_info}$B$OA4It$G(B$ec+1$$B%o!<%I$K$J$k!#(B
+
\subsection{glue\_kern}
-$BFCDj$N%-%c%i%/%?%?%$%W$NAH$_9g$;;~$KA^F~$9$Y$-(Bglue$BKt$O(Bkern$B$r(B
+$BFCDj$N%-%c%i%/%?%?%$%W$NAH$_9g$;;~$KA^F~$9$Y$-(B{\it glue}$BKt$O(B{\it kern}$B$r(B
$B4JC1$J%W%m%0%i%`8@8l$K$h$C$F;XDj$9$k!#(B
$B3FL?Na$O!"0J2<$N(B4$B%P%$%H$G9=@.$5$l$k!#(B
\begin{description}
-\item{$BBh(B1$B%P%$%H(B} 128$B0J>e$N;~!"$3$N%o!<%I$G%W%m%0%i%`=*N;!#(B
-\item{$BBh(B2$B%P%$%H(B}
+\item{$BBh(B1$B%P%$%H(B({\it skip\_byte})}
+ \begin{itemize}
+ \item 128$B$h$jBg$-$$$H$-(B\\
+ $B8=:_$N%o!<%I$,(B{\it char\_info}$B$+$i<($5$l$?:G=i$N%o!<%I(B
+ $B$G$"$k>l9g$O!"<B:]$N(B{\it glue\_kern}$B%W%m%0%i%`$,(B
+ {\it glue\_kern}[$256*{\it op\_byte}+{\it remainder}$]$B$+$i(B
+ $B<}$a$i$l$F$$$k!J$9$J$o$A!":FG[CV$5$l$F$$$k!K$3$H$r<($9(B
+ \footnote{$B!V:FG[CV!W$O!"%5%$%:$,(B256$B$rD6$($kBg$-$J(B
+ {\it glue\_kern}$B%F!<%V%k$r3JG<$9$k$?$a$NJ}:v$G$"$j!"(B
+ $B2$J8(BTFM$B$N(B{\it lig\_kern}$B%F!<%V%k$K$*$1$k$=$l$HF1MM$G$"$k!#(B
+ 2018$BG/(B2$B7n$KF|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$K$h$C$F!"(B
+ p\TeX{}$B5Z$S(BpPLtoTF$B$G?7$?$K%5%]!<%H$5$l$?!#(B}$B!#(B
+ $B:G=i$N%o!<%I$G$J$$>l9g!J$9$J$o$A!"4{$K:FG[CV@h$"$k$$$O(B
+ $B%W%m%0%i%`$N%9%F%C%W$r3+;O$7$?8e$N%o!<%I$G$"$k>l9g!K$O!"(B
+ $B$=$N>l$G%W%m%0%i%`$r=*N;$9$k!#(B
+ \item 128$B$N$H$-(B\\
+ $B$3$N%o!<%I$r<B9T$7$F%W%m%0%i%`$r=*N;$9$k!#(B
+ \item 128$B$h$j>.$5$$$H$-(B\\
+ $B$3$N%o!<%I$r<B9T$7$?8e!"<!$N%9%F%C%W$^$G%9%-%C%W$9$k(B
+ $B%o!<%I?t$r<($9(B
+ \footnote{$B!V%9%-%C%W!W(B(SKIP)$B$O!"85!9%"%9%-!<$N8x<0%Z!<%8(B
+ {\tt http://ascii.asciimw.jp/pb/ptex/tfm/jfm.html}$B$KJ8=q2=(B
+ $B$5$l$F$O$$$?$,!"<B:]$K$O(B(p)PLtoTF$B$N(B{\it glue\_kern}$B%F!<%V%kFb$G(B
+ SKIP$BL?Na$r;HMQ$9$k$3$H$,$G$-$:!"(Bp\TeX{}$B$b$d$O$j(BSKIP$BL?Na$r(B
+ $B%5%]!<%H$7$F$$$J$+$C$?!#(B
+ 2018$BG/(B2$B7n$NF|K\8l(B\TeX{}$B3+H/%3%_%e%K%F%#$N2~=$$K$h$j!"(B
+ $B?7$?$K%5%]!<%H$,3+;O$5$l$?!#(B}$B!#(B
+ \end{itemize}
+\item{$BBh(B2$B%P%$%H(B({\it char\_type})}
\begin{itemize}
\item $B<!$NJ8;z$N%-%c%i%/%?%?%$%W$,!"(B
- $B$3$N%P%$%H$G<($9%-%c%i%/%?%?%$%W$HF1$8>l9g!"(B
+ $B$3$N%P%$%H$G<($9%-%c%i%/%?%?%$%W(B
+ \footnote{$B$3$3$K%-%c%i%/%?%?%$%W$,3JG<$5$l$k$?$a!"(B
+ $B%-%c%i%/%?%?%$%W$N>e8B$O(B255$B$J$N$G$"$k!#(B}$B$HF1$8>l9g!"(B
$BBh(B3$B%P%$%H$N=hM}$r<B9T$7!"%W%m%0%i%`=*N;!#(B
\item $B$=$&$G$J$1$l$P<!$N%9%F%C%W$X!#(B
\end{itemize}
-\item{$BBh(B3$B%P%$%H(B}
+\item{$BBh(B3$B%P%$%H(B({\it op\_byte})}\\
$B$3$NCM$K$h$C$F%0%k!<$r07$&$+%+!<%s$r07$&$+$r5,Dj$9$k!#(B
\begin{itemize}
\item 127$B0J2<$N>l9g(B{\it glue[remainder$\times$3]}$B$N%0%k!<$rA^F~!#(B
\item 128$B0J>e$N>l9g(B{\it kern[remainder]}$B$N%+!<%s$rA^F~!#(B
\end{itemize}
-\item{$BBh(B4$B%P%$%H(B} remainder
+\item{$BBh(B4$B%P%$%H(B({\it remainder})}\\
+ $BBh(B3$B%P%$%H$K$h$j5,Dj$5$l$k(B
+ {\it glue}$B$^$?$O(B{\it kern}$B$X$N%$%s%G%C%/%9$r<($9!#(B
\end{description}
+%
\subsection{glue$B%F!<%V%k(B}
-3$B%o!<%I$G(B1$B$D$N%0%k!<$r9=@.$9$k!#(B
+$B<+A3D9!"?-$SD9!"=L$_D9$N(B3$B%o!<%I$G(B1$B$D$N%0%k!<$r9=@.$9$k(B
+$B!J$7$?$,$C$F!"(B$ng$$B$OI,$:(B3$B$NG\?t$H$J$k!K!#(B
$B3FCM$O!"(B$design size\times2^{-20}$$B$rC10L$H$7$FI=$9!#(B
\begin{description}
\item{$BBh(B1$B%o!<%I(B} width
\item{$BBh(B2$B%o!<%I(B} stretch
\item{$BBh(B3$B%o!<%I(B} shrink
\end{description}
+%
\subsection{param$B%F!<%V%k(B}
\begin{description}
-\item{param[1]} italic slant$B!#(B
-\item{param[2][3][4]} $B4A;z%U%)%s%H4V$KA^F~$9$k%0%k!<$N%G%U%)%k%HCM!#(B
-\item{param[5][6][7]} $B4A;z(B--$B1Q;z%U%)%s%H4V$KA^F~$9$k%0%k!<$N%G%U%)%k%HCM!#(B
+\item{param[1]} $BJ8;z$N79$-(B (italic slant)$B!#(B
+\item{param[2][3][4]} $B4A;z4V$KA^F~$9$k%0%k!<$N%G%U%)%k%HCM!#(B
+\item{param[5]} p\TeX{}$B$G(Bzh$B$G;2>H$5$l$k@#K!!#(B
+\item{param[6]} p\TeX{}$B$G(Bzw$B$G;2>H$5$l$k@#K!!#(B
+\item{param[7][8][9]} $B4A;z$H1Q;z4V$KA^F~$9$k%0%k!<$N%G%U%)%k%HCM!#(B
\end{description}
+%
\newpage
\begin{table}[h]
\begin{minipage}[b]{2in}
@@ -147,11 +218,11 @@ $ng$ & $np$ \\ \hline
\begin{minipage}[b]{3.3in}
\noindent
\begin{tabular}{l}
-$id=$ JFM\_ID number. ($=11$) \\
+$id=$ JFM\_ID number. ($=11$ for yoko, $9$ for tate) \\
$nt=$ number of words in the character type table. \\
$lf=$ length of the entire file, in words. \\
$lh=$ length of the header data, in words. \\
-$bc=$ smallest character type in the font. \\
+$bc=$ smallest character type in the font. ($=0$ for JFM) \\
$ec=$ largest character type in the font. \\
$nw=$ number of words in the width table. \\
$nh=$ number of words in the height table. \\