\LuaTeX-jaパッケージは,次世代標準\TeX である\LuaTeX の上で,\pTeX と同等
/それ以上の品質の日本語組版を実現させようとするマクロパッケージである.
%</ja>
-\LuaTeX-ja宏包是应用于下一代标准\TeX引擎亦即\LuaTeX引擎上的高质量日语文档排版宏包。
+ %<*zh>
++\LuaTeX-ja宏包是应用于下一代标准\TeX 引擎亦即\LuaTeX 引擎上的高质量日语文档排版宏包。
+ %</zh>
%<en>\subsection{Backgrounds}
%<ja>\subsection{背景}
OpenType, Unicodeといった計算機で日本語を扱う際の状況の変化に追従すること
を怠ってしまったのだ.
%</ja>
-一般情况下,\TeX下的日语文档输出,是ASCII \pTeX(\TeX的一个扩展)及其衍生
-软件来完成的。\pTeX作为\TeX的一个扩展引擎,在生成高质量的日语文档时,规避
-了繁杂的宏编写。但是在和同时期的引擎相比之下,\pTeX的处境未免有些尴尬:\pTeX
-已经远远落后于\eTeX和pdf\TeX,此外也没有跟上计算机上对日文处理的演进(比如,
+ %<*zh>
++一般情况下,\TeX 下的日语文档输出,是ASCII \pTeX(\TeX 的一个扩展)及其衍生
++软件来完成的。\pTeX 作为\TeX 的一个扩展引擎,在生成高质量的日语文档时,规避
++了繁杂的宏编写。但是在和同时期的引擎相比之下,\pTeX 的处境未免有些尴尬:\pTeX
++已经远远落后于\eTeX 和pdf\TeX,此外也没有跟上计算机上对日文处理的演进(比如,
+ UTF-8编码,TrueType字体,OpenType字体)。
+ %</zh>
%<*en>
Recently extensions of \pTeX, namely \upTeX\ (Unicode-implementation
\pTeX に対応させようという動きはなく,海外とのgapは未だにあるのが現状であ
る.
%</ja>
-最近开发的\pTeX扩展,即\upTeX(Unicode下的\pTeX实现)和\epTeX(\pTeX和
-\eTeX的融合版本),虽然在部分情况上弥补了上述的差距,但是差距依然存在。
+ %<*zh>
++最近开发的\pTeX 扩展,即\upTeX(Unicode下的\pTeX 实现)和\epTeX(\pTeX 和
++\eTeX 的融合版本),虽然在部分情况上弥补了上述的差距,但是差距依然存在。
+ %</zh>
%<*en>
However, the appearance of \LuaTeX\ changed the whole situation. With
\TeX マクロによって日本語組版を\LuaTeX の上で実現させようという目的で開発
が始まったパッケージである.
%</ja>
-不过,\LuaTeX的出现改变了整个状况。用户可以通过使用Lua语言的“callback”来
-调整\LuaTeX的内部处理机制。所以,没有必要去通过修改引擎的源代码来支持日文
+ %<*zh>
++不过,\LuaTeX 的出现改变了整个状况。用户可以通过使用Lua语言的“callback”来
++调整\LuaTeX 的内部处理机制。所以,没有必要去通过修改引擎的源代码来支持日文
+ 排版,相反,我们需要做的仅仅是编写其当处理callback的Lua脚本。
+ %</zh>
%<en>\subsection{Major Changes from \pTeX}
%<ja>\subsection{\pTeX からの主な変更点}
-%<zh>\subsection{与\pTeX的差异所在}
++%<zh>\subsection{与\pTeX 的差异所在}
%<*en>
The \LuaTeX-ja package is under much influence of \pTeX\ engine. The initial
\pTeX の完全な移植は目標とはしない.\pTeX における不自然な仕様・挙動があ
れば,そこは積極的に改める.}
%</ja>
-\LuaTeX-ja宏包在设计上,受\pTeX影响很大。最初开发的主要议题是实现\pTeX的特性。
+ %<*zh>
++\LuaTeX-ja宏包在设计上,受\pTeX 影响很大。最初开发的主要议题是实现\pTeX 的特性。
+ 不过,{\bf\LuaTeX-ja不是简简单单的移植\pTeX,很多不自然的特征和现象都被移出了。}
+ %</zh>
%<*en>
The followings are major changes from \pTeX:
%<*ja>
以下は \pTeX からの主な変更点である.
%</ja>
-下面列举出了一些和\pTeX的差异:
+ %<*zh>
++下面列举出了一些和\pTeX 的差异:
+ %</zh>
\begin{itemize}
%<*en>
直後の改行は無視される(スペースが入らない)ようになっていた.しかし,
\LuaTeX-ja では \LuaTeX の仕様のためにこの機能は完全には実装されていない.
%</ja>
-\item \pTeX中,日文字符之后的断行并不允许(也不产生空格),其他在源码中的断行
- 是可以随处允许的。不过,因为\LuaTeX的特殊关系,\LuaTeX-ja并没有这个功能。
+ %<*zh>
++\item \pTeX 中,日文字符之后的断行并不允许(也不产生空格),其他在源码中的断行
++ 是可以随处允许的。不过,因为\LuaTeX 的特殊关系,\LuaTeX-ja并没有这个功能。
+ %</zh>
%<*en>
\item The insertion process of glues/kerns between two Japanese
%</en>
%<*ja>
\item 2つの和文文字の間,和文文字と欧文文字の間に入るグルー/カーン
- (\textbf{JAglue} と呼ぶ)の挿入処理が0から書き直されている.
+ (\textbf{JAglue}と呼ぶ)の挿入処理が0から書き直されている.
%</ja>
+ %<*zh>
+ \item 插在日文字符和其他字符言之间的胶/出格(我们将此称为\textbf{JAglue})是重新实现的。
+ %</zh>
\begin{itemize}
%<*en>
\verb+of{}fice+ で合字は抑制されない),\textbf{JAglue}の挿入処理も
「ノードベース」である.
%</ja>
-\item 在\LuaTeX中,内部的字符处理是“基于node的”(例如:\verb!of{}fice!不会避免合字),
+ %<*zh>
++\item 在\LuaTeX 中,内部的字符处理是“基于node的”(例如:\verb!of{}fice!不会避免合字),
+ \textbf{JAglue}的插入处理,现在也是“基于node的”。
+ %</zh>
%<*en>
\item Furthermore, nodes between two characters which have no effects in
\item \textbf{注意:上の2つの変更により,従来\textbf{JAglue}の挿入処理を分断するのに
使われていたいくつかの方法は用いることができない.具体的には,次の方法はもはや無効である:}
%</ja>
-\item \textbf{警告:鉴于以上两点,在\pTeX中分割\textbf{JAglue}处理的多种方法不再生效。}
+ %<*zh>
++\item \textbf{警告:鉴于以上两点,在\pTeX 中分割\textbf{JAglue}处理的多种方法不再生效。}
+ 明确地说,下列两种方法不再生效:
+ %</zh>
\begin{verbatim}
ちょ{}っと ちょ\/っと
\end{verbatim}
For detailed information, see Part~\ref{part-imp}.
%</en>
%<*ja>
-詳細については第 \ref{part-imp} 部を参照.
+詳細については第\ref{part-imp}部を参照.
%</ja>
+ %<*zh>
+ 详细的描述,请参见第\ref{part-imp}编。
+ %</zh>
%<en>\subsection{Notations}
%<ja>\subsection{用語と記法}
\item 下線付きのタイプライタ体で書かれた語(例:\Pkg{fontspec})は\LaTeX の
パッケージやクラスを表す.
%</ja>
-\item 用下划线表示的词(如:\Pkg{fontspec})表示\LaTeX的宏包或者文档类。
+ %<*zh>
++\item 用下划线表示的词(如:\Pkg{fontspec})表示\LaTeX 的宏包或者文档类。
+ %</zh>
%<*en>
\item The word `primitive' is used not only for primitives in \LuaTeX,
\item 「プリミティブ」という語を,\LuaTeX のプリミティブだけではなく \LuaTeX-ja
のコアモジュールで定義されたコントロールシーケンスに対しても用いる.
%</ja>
-\item “primitive”,该词在本文档中不仅表示\LuaTeX的基本控制命令,也包括\LuaTeX-ja的相关的基本控制命令
+ %<*zh>
++\item “primitive”,该词在本文档中不仅表示\LuaTeX 的基本控制命令,也包括\LuaTeX-ja的相关的基本控制命令
+ %</zh>
%<*en>
\item In this document, natural numbers start from~0.
%<en>\subsection{Using in plain \TeX}
%<ja>\subsection{plain \TeX で使う}
-%<zh>\subsection{plain \TeX下使用}
++%<zh>\subsection{plain \TeX 下使用}
\label{ssec-plain}
%<*en>
%<*ja>
\LuaTeX-jaを plain \TeX で使うためには,単に次の行をソースファイルの冒頭に追加すればよい:
%</ja>
-在plain \TeX下使用\LuaTeX-ja相当简易,在文档开头放置一行:
+ %<*zh>
++在plain \TeX 下使用\LuaTeX-ja相当简易,在文档开头放置一行:
+ %</zh>
\begin{verbatim}
\input luatexja.sty
\end{verbatim}
%<en>\subsection{Using in \LaTeX}
%<ja>\subsection{\LaTeX で使う}
-%<zh>\subsection{\LaTeX下使用}
++%<zh>\subsection{\LaTeX 下使用}
\label{ssec-ltx}
\paragraph{\LaTeXe}
\LaTeXe を用いる場合も基本的には同じである.日本語組版のための最低限の環境を
設定するためには,\texttt{luatexja.sty}を読み込むだけでよい:
%</ja>
-在\LaTeXe下使用基本相同。设定日文的最小环境,你只需加载\texttt{luatexja.sty}:
+ %<*zh>
++在\LaTeXe 下使用基本相同。设定日文的最小环境,你只需加载\texttt{luatexja.sty}:
+ %</zh>
\begin{verbatim}
\usepackage{luatexja}
\end{verbatim}
これで\pLaTeX の\texttt{plfonts.dtx}と\texttt{pldefs.ltx}に相当する最低限の設定が
なされる:
%</ja>
-这些做了最小的设定(作用相当于\pLaTeX中的\texttt{plfonts.dtx}和\texttt{pldefs.ltx}):
+ %<*zh>
++这些做了最小的设定(作用相当于\pLaTeX 中的\texttt{plfonts.dtx}和\texttt{pldefs.ltx}):
+ %</zh>
\begin{itemize}
%<*en>
Ryumin-Light, GothicBBB-Mediumだった)しか利用できなかった時の名残であり,\pLaTeX{}
での標準設定とも同じである.
%</ja>
-注意的是两个字体族的粗体系列同为中等系列的\textbf{哥特}族。这\pLaTeX中的规定。在近些年
+ %<*zh>
+ \item 定义了两个字体族:\texttt{mc}!和\texttt{gt}:\\
+ \begin{center}
+ \begin{tabular}{ccccc}
+ \hline
+ \textbf{字体}&\textbf{字体族}&\verb!\mdseries!&\verb!\bfseries!&缩放率\\
+ \hline
+ \textit{mincho}&\verb!mc!&Ryumin-Light&GothicBBB-Medium&0.962216\\
+ \textit{gothic}&\verb!gt!&GothicBBB-Medium&GothicBBB-Medium&0.962216\\
+ \hline
+ \end{tabular}
+ \end{center}
++注意的是两个字体族的粗体系列同为中等系列的\textbf{哥特}族。这\pLaTeX 中的规定。在近些年
+ 中的DTP实务中有仅使用2个字体的趋向(是为Ryumin-Light和GothicBBB-Medium)。
+ %</zh>
%<*en>
\item Japanese characters in math mode are typeset by the font family \texttt{mc}.
(奥村晴彦氏によるクラスファイル)に対応するものとして,\Pkg{ltjclasses},
\Pkg{ltjsclasses}がそれぞれ用意されている.
%</ja>
-现在,我们有相当于\Pkg{jclasses}(\pLaTeX标准文档类)和\Pkg{jsclasses}
+ %<*zh>
+ 不过,上述设定并不能满足排版基于日文的文档。为了排印基于日文的文
+ 档,你最好不要使用\texttt{article.cls},\texttt{book.cls}等文档类文件。
++现在,我们有相当于\Pkg{jclasses}(\pLaTeX 标准文档类)和\Pkg{jsclasses}
+ (奥村晴彦)的文档类,即\Pkg{ltjclasses}和\Pkg{ltjsclasses}。
+ %</zh>
%<*en>
\paragraph{\texttt{\char92 CID}, \texttt{\char92 UTF} and macros in OTF package}
一部をサポートしている.これらの機能を用いるためには\Pkg{luatexja-otf}パッケージ
を読み込めばよい.
%</ja>
-\pLaTeX下,\underline{\texttt{otf}}宏包(斋藤修三郎开发)是用来排印存在
+ %<*zh>
+ \paragraph{OTF包中的\texttt{\char92CID},\texttt{\char92UTF}及其他宏}
++\pLaTeX 下,\underline{\texttt{otf}}宏包(斋藤修三郎开发)是用来排印存在
+ 于Adobe-Japan1-6但不存在于JIS X 0208中的字符。
+ 该包已经广泛使用,\LuaTeX-ja支持部分\Pkg{otf}包中的部分功能。
+ 如果你想使用这些功能,加载\Pkg{luatexja-otf}宏包。
+ \bgroup
+ \fontencoding{JY3}\selectfont
+ %</zh>
\begin{LTXexample}
森\UTF{9DD7}外と内田百\UTF{9592}とが\UTF{9AD9}島屋に行く。
\pTeX では,特に何もしないでも数式中に和文文字を記述することができた.そのため,
以下のようなソースが見られた:
%</ja>
-\paragraph{注记:数学模式下的日文字符} \pTeX支持在数学模式下的日文字符,如以下源码:
+ %<*zh>
++\paragraph{注记:数学模式下的日文字符}
++\pTeX 支持在数学模式下的日文字符,如以下源码:
+ %</zh>
+
\begin{LTXexample}
$f_{高温}$~($f_{\text{high temperature}}$).
\[ y=(x-1)^2+2\quad よって\quad y>0 \]
%<*ja>
また\LuaTeX-jaプロジェクトでは,和文文字が識別子として用いられることはほとんどない
と考えており,したがってこの節では数式モード中の和文フォントを変更する方法については
-記述しない.この方法については \ref{ssec-math} 節を参照のこと.
+記述しない.この方法については\ref{ssec-math}節を参照のこと.
%</ja>
+ %<*zh>
+ 我们也认为使用日文字符作为标识符的情况极为少见,所以我们不在此章节描述如何在数学模式下改变日文字体。
+ 关于此方法,请参见\ref{ssec-math}。
+ %</zh>
%<*en>
\paragraph{plain \TeX}
%<*ja>
\paragraph{plain \TeX}
plain \TeX で和文フォントを変更するためには,\verb+\jfont+ プリミティブを用いなけれ
-ばならない.\ref{ssec-jfont} 節を参照.
+ばならない.\ref{ssec-jfont}節を参照.
%</ja>
-在plain \TeX下改变日文字体,你必须使用基本语句\verb!\jfont!。请参见\ref{ssec-jfont}。
+ %<*zh>
+ \paragraph{plain \TeX}
++在plain \TeX 下改变日文字体,你必须使用基本语句\verb!\jfont!。请参见\ref{ssec-jfont}。
+ %</zh>
%<*en>
\paragraph{NFSS2}
\LaTeXe については,\LuaTeX-jaではフォント選択システムを\pLaTeXe\ (\texttt{plfonts.dtx})
の大部分をそのまま採用している.
%</ja>
-对于\LaTeXe,\LuaTeX-ja采用了\pLaTeXe中(即\texttt{plfonts.dtx})大部分字体选择系统。
+ %<*zh>
+ \paragraph{NFSS2}
++对于\LaTeXe,\LuaTeX-ja采用了\pLaTeXe 中(即\texttt{plfonts.dtx})大部分字体选择系统。
+ %</zh>
\begin{itemize}
%<*en>
\item Two control sequences \verb+\mcdefault+ and \verb+\gtdefault+ are
\texttt{JY3}に変更し,\verb+\fontencoding{T1}+ は欧文フォント側を
\texttt{T1}へと変更する.\verb+\fontfamily+ も引数により和文側,欧文
側,\textbf{あるいは両方}のフォントファミリを変更する.詳細は
- \ref{ssub-nfsspat} 節を参照すること.
+ \ref{ssub-nfsspat}節を参照すること.
%</ja>
+ %<*zh>
+ \verb!\fontencoding{<encoding>}!依赖于参数以改变西文字体或者日文字体。
+ 例如,\verb!\fontencoding{JY3}!改变当前日文字体至\texttt{JY3},
+ \verb!\fontencoding{T1}!改变西文字体至\texttt{T1}。
+ \verb!\fontfamily!也会改变日文字体或西文字体的族,抑或二者。
+ 细节详见\ref{ssub-nfsspat}。
+ %</zh>
%<*en>
\item For defining a Japanese font family, use
和文フォントについては全ての和文文字のグリフがほぼ等幅であるのが普通であるため,
\verb+\setmonojfont+ コマンドは存在しないことに注意.また,これらの和文用の7つのコマ
ンドではKerning featureはデフォルトではoffとなっている.これはこの
-featureが\textbf{JAglue}と衝突するためである(\ref{para-kern} 節を参照).
+featureが\textbf{JAglue}と衝突するためである(\ref{para-kern}節を参照).
%</ja>
+ %<*zh>
+ 请注意并没有\verb!\setmonofont!命令,因为流行的日文字体几乎全部是等宽的。
+ 另注意,出格特性在这7个命令中默认关闭,因为此特性会与\textbf{JAglue}冲突(参见\ref{para-kern})。
+ %</zh>
%<en>\section{Changing Parameters}
%<ja>\section{パラメータの変更}
%<*ja>
\item 八登崇之氏による\upTeX 用の\texttt{PXbase}バンドル.
%</ja>
-\item 八登崇之的\texttt{PXbase}宏包(\upTeX下使用)。
+ %<*zh>
++\item 八登崇之的\texttt{PXbase}宏包(\upTeX 下使用)。
+ %</zh>
\end{itemize}
%<*en>
indicated in Table~\ref{table-rng3}.
%</en>
%<*ja>
-\item[範囲3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表 \ref{table-rng3}
+\item[範囲3${}^{\text{J}}$] 句読点と記号類.ブロックのリストは表\ref{table-rng3}%
に示してある.
%</ja>
+ %<*zh>
+ \item[范围3${}^\text{J}$] 标点以及杂项符号,参见表\ref{table-rng3}。
+ %</zh>
\begin{table}[!tb]
%<*en>
\caption{Unicode blocks in predefined character range~3.}
%</en>
%<*ja>
\item[範囲6${}^{\text{J}}$] 日本語で用いられる文字.ブロックのリストは
- 表 \ref{table-rng6} に示す.
+ 表\ref{table-rng6}に示す.
%</ja>
+ %<*zh>
+ \item[范围6${}^\text{J}$] 日文字符。
+ %</zh>
\begin{table}[!tb]
%<*en>
\caption{Unicode blocks in predefined character range~6.}
%<*ja>
\item[範囲7${}^{\text{J}}$] CJK言語で用いられる文字のうち,Adobe-Japan1-6に
含まれていないもの.
- ブロックのリストは表 \ref{table-rng7} に示す.
+ ブロックのリストは表\ref{table-rng7}に示す.
%</ja>
+ %<*zh>
+ \item[范围7${}^\text{J}$] 不包含于Adobe-Japan1-6的CJK字符,参见表\ref{table-rng7}。
+ %</zh>
\begin{table}[!tb]
%<*en>
\caption{Unicode blocks in predefined character range~7.}
\ltjsetparameter{alxspmode={`あ,preonly}, jaxspmode={`\!,postonly}}
\end{verbatim}
%<*en>
-One can use also numbers to specify these two parameters (see Subsection \ref{ssec-param}).
+One can use also numbers to specify these two parameters (see Subsection~\ref{ssec-param}).
%</en>
%<*ja>
-また,これら2パラメータには数値で値を指定することもできる(\ref{ssec-param} 節を参照).
+また,これら2パラメータには数値で値を指定することもできる(\ref{ssec-param}節を参照).
%</ja>
+ %<*zh>
+ 你也可以使用数字来定义两个参数(参见\ref{ssec-param})。
+ %</zh>
%<*en>
If you want to enable/disable all insertions of \Param{kanjiskip} and
(\Param{yalbaselineshift}パラメータ)と和文フォントのベースラインのシフト量
(\Param{yjabaselineshift}パラメータ)を独立に設定できるようになっている.
%</ja>
-在\pTeX中,此项设定由设定\verb!\yabaselineshift!为非零长度(西文字体基线应向下浮动)。
+ %<*zh>
+ 为了确保日文字体和西文字体能够对其,有时需要浮动其中一者的基线。
++在\pTeX 中,此项设定由设定\verb!\yabaselineshift!为非零长度(西文字体基线应向下浮动)。
+ 不过,如果文档的中主要语言不是日文,那么最好上浮日文字体的基线,西文字体不变。
+ 如上所述,\LuaTeX-ja可以独立设定西文字体的基线(\Param{yabaselineshift}参数)和日文字体的基线(\Param{yjabaselineshift}参数)。
+ %</zh>
\begin{LTXexample}
\vrule width 150pt height 0.4pt depth 0pt\hskip-120pt
\pLaTeX と \LuaTeX-jaではトンボの出力をサポートしている.
トンボを出力するためには以下の手順が必要である:
%</ja>
-\pLaTeX和\LuaTeX-ja均在底层支持裁剪框标记。需要下列步骤来实现:
+ %<*zh>
+ 裁剪框标记是在一页的四角和水平/垂直中央放置的标记。在日文中,裁剪框被称为“トンボ”。
++\pLaTeX 和\LuaTeX-ja均在底层支持裁剪框标记。需要下列步骤来实现:
+ %</zh>
\begin{enumerate}
%<*en>
用いられるUTF/OTFパッケージ用のメトリックである \verb+upnmlminr-h.tfm+ を
元にしている.\Pkg{luatexja-otf}パッケージを使うときはこのJFMを指定するべきである.
%</ja>
-\item[\tt jfm-ujis.lua] \LuaTeX-ja标准JFM。次JFM基于\upTeX使用的UTF/OTF宏包的\verb!upnmlminr-h.tfm!。
+ %<*zh>
++\item[\tt jfm-ujis.lua] \LuaTeX-ja标准JFM。次JFM基于\upTeX 使用的UTF/OTF宏包的\verb!upnmlminr-h.tfm!。
+ 如果你使用\Pkg{luatexja-otf}宏包,你将会用到此JFM。
+ %</zh>
%<*en>
\item[\tt jfm-jis.lua] A counterpart for \verb+jis.tfm+, `JIS font
metric' which is widely used in \pTeX. A major difference of
\texttt{jfm-jis.lua}の主な違いは,\texttt{jfm-ujis.lua}ではほとんどの文字が
正方形状であるのに対し,\texttt{jfm-jis.lua}では横長の長方形状である.
%</ja>
-\item[\tt jfm-jis.lua] 相当于\pTeX使用的\verb!jis.tfm!(“JIS font metric”)。
+ %<*zh>
++\item[\tt jfm-jis.lua] 相当于\pTeX 使用的\verb!jis.tfm!(“JIS font metric”)。
+ \texttt{jfm-ujis.lua}和\texttt{jfm-jis.lua}主要区别是:
+ \texttt{jfm-ujis.lua}下的大部分字符是方形,
+ \texttt{jfm-jis.lua}下则为长方形。
+ %</zh>
%<*en>
\item[\tt jfm-min.lua] A counterpart for \verb+min10.tfm+, which is one
of the default Japanese font metric shipped with \pTeX. There
%<*ja>
\item[\tt jfm-min.lua] \pTeX に同梱されているデフォルトの和文フォントメトリック
である \verb+min10.tfm+ に相当するJFMである.このJFMと他の2つのJFMの間には
- 表 \ref{tab-difjfm} に示すような特筆すべき違いがある.
+ 表\ref{tab-difjfm}に示すような特筆すべき違いがある.
%</ja>
-\item[\tt jfm-min.lua] 相当于\pTeX中默认的\verb!min10.tfm!。
+ %<*zh>
++\item[\tt jfm-min.lua] 相当于\pTeX 中默认的\verb!min10.tfm!。
+ 这个JFM与其他2个JFM的区别如表\ref{tab-difjfm}所示。
+ %</zh>
\end{description}
--\item[jfmvar=<string>] Sometimes there is a need that ...
++\item[jfmvar=<string>] Sometimes there is a need that \ldots.
\end{list}
\begin{table}[t]
\item \texttt{script=...}といったfeatureを使いたい場合には,\verb+\jfont+
プリミティブに\texttt{-kern}を指定するべきである.
%</ja>
+ %<*zh>
+ \item 当你想使用其他字体特性如\texttt{script=...}的时候,可以在\verb!jfont!基本语句中设置\texttt{-kern}
+ %</zh>
%<*en>
\item If you want to use Japanese fonts in proportional width, and use
-- information from this font, use \texttt{jfm-prop.lua} for its JFM, and ...
++ information from this font, use \texttt{jfm-prop.lua} for its JFM, and\ldots.
%</en>
%<*ja>
\item もしプロポーショナル幅の和文フォントをそのフォントの情報に基づいて使いたい
%<en>\subsection{Prefix \texttt{psft}}
-%<ja>\subsection{\texttt{psft} プレフィックス}
+%<ja>\subsection{\texttt{psft}プリフィックス}
+ %<zh>\subsection{\texttt{psft}前缀}
\label{ssec-psft}
%<*en>
Besides \texttt{file:}\ and \texttt{name:}\ prefixes, one can use \texttt{psft:}\
to specify a `name-only' Japanese font which
will not be embedded to PDF. Typical use of this prefix is to specify
the `standard' Japanese fonts, namely, `Ryumin-Light' and
-`GothicBBB-Medium'. For kerning or other information, that of Kozuka
-Mincho Pr6N Regular (this is a font by Adobe Inc., and included in
-Japanese Font Packs for Adobe Reader) will be used.
+`GothicBBB-Medium'.
%</en>
%<*ja>
-\texttt{file:}ã\81¨\texttt{name:}ã\81®ã\83\97ã\83¬フィックスに加えて,
+\texttt{file:}ã\81¨\texttt{name:}ã\81®ã\83\97ã\83ªフィックスに加えて,
\verb+\jfont+ プリミティブ(と \verb+\font+ プリミティブ)では
-\texttt{psft:}プレフィックスを用いることができる.
-このプレフィックスを用いることで,PDFには埋め込まれない「名前だけの」
-和文フォントを指定することができる.典型的な使い方は「標準的な」和文フォント,
-つまり`Ryumin-Light'と`GothicBBB-Medium'を指定することである.
-この場合,カーニング他の情報は小塚明朝 Pr6N Regular
-(Adobe社によるフォントで,Adobe Readerの日本語フォントパックに含まれている)
-が用いられる.
+\texttt{psft:}プリフィックスを用いることができる.
+このプリフィックスを用いることで,PDFには埋め込まれない「名前だけの」
+和文フォントを指定することができる.「標準的な」和文フォント,
+つまり`Ryumin-Light'と`GothicBBB-Medium'の指定でこのプリフィックスが使われる.
%</ja>
+ %<*zh>
+ 除使用\texttt{file:}和\texttt{name:}外,我们还可以在\verb!\jfont!(以及\verb!\font!)
+ 中使用\texttt{psft:}来设定一个“名义上”的并不嵌入PDF中的日文字体。
+ 此前缀的典型使用是定义“标准”日文字体,即“Ryumin-Light”和“GothicBBB-Medium”。
+ \paragraph{\texttt{cid}键} 默认使用\texttt{psft:}前缀定义的字体是为Adobe-Japan1-6 CID字体。
+ 也可以使用\texttt{cid}键来使用其他的CID字体,如中文和韩文。
+ %</zh>
-\paragraph{\texttt{cid} key}
+%<en>\paragraph{\texttt{cid} key}
+%<ja>\paragraph{\texttt{cid}キー}
\label{para-cid}
- \texttt{cid} key, ...
+%<*en>
+The default font defined by using \texttt{psft:} prefix is for Japanese typesetting;
+it is Adobe-Japan1-6 CID-keyed font.
+One can specify \texttt{cid} key to use other CID-keyed non-embedded fonts
+for Chinese or Korean typesetting.
+\begin{lstlisting}[numbers=left]
+\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-6;jfm=jis} % Japanese
+\jfont\testD={psft:Ryumin-Light:jfm=jis} % default value is Adobe-Japan1-6
+\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-5;jfm=jis} % Traditional Chinese
+\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis} % Simplified Chinese
+\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis} % Korean
+\end{lstlisting}
+Note that the code above specifies \texttt{jfm-jis.lua}, which is for Japanese fonts,
+as JFM for Chinese and Korean fonts.
+%</en>
+%<*ja>
+標準で\texttt{psft:}プリフィックスで定義されるフォントは日本語用のもので
+あり,Adobe-Japan1-6のCIDに対応したものとなる.しかし,\LuaTeX-jaは中国語
+の組版にも威力を発揮することが分かり,日本語フォントでない非埋込フォント
+の対応も必要となった.そのために追加されたのが\texttt{cid}キーである.
+\texttt{cid}キーに値を指定すると,そのCIDを持った非埋込フォントを定義することができる:
+\begin{lstlisting}[numbers=left]
+\jfont\testJ={psft:Ryumin-Light:cid=Adobe-Japan1-6;jfm=jis} % 日本語
+\jfont\testD={psft:Ryumin-Light:jfm=jis} % 無指定時は Adobe-Japan1-6
+\jfont\testC={psft:AdobeMingStd-Light:cid=Adobe-CNS1-5;jfm=jis} % 中国語繁体字
+\jfont\testG={psft:SimSun:cid=Adobe-GB1-5;jfm=jis} % 中国語簡体字
+\jfont\testK={psft:Batang:cid=Adobe-Korea1-2;jfm=jis} % 韓国語
+\end{lstlisting}
+上のコードでは中国語・韓国語用フォントに対してもJFMに
+日本語用の\texttt{jfm-jis.lua}を指定しているので注意されたい.
+%</ja>
+
+%<*en>
+At present, \LuaTeX-ja supports only 4 values written in the sample code above.
+Specifying other values, e.g.,
+%</en>
+%<*ja>
+今のところ,\LuaTeX-jaは上のサンプルコード中に書いた4つの値しかサポートしていない.
+%</ja>
+\begin{lstlisting}
+\jfont\test={psft:Ryumin-Light:cid=Adobe-Japan2;jfm=jis}
+\end{lstlisting}
+%<*en>
+occurs the following error:
+%</en>
+%<*ja>
+のようにそれら以外の値を指定すると,
+%</ja>
+\begin{lstlisting}[numbers=left]
+! Package luatexja Error: bad cid key `Adobe-Japan2'.
+
+See the luatexja package documentation for explanation.
+Type H <return> for immediate help.
+<to be read again>
+ \par
+l.78
+
+? h
+I couldn't find any non-embedded font information for the CID
+`Adobe-Japan2'. For now, I'll use `Adobe-Japan1-6'.
+Please contact the LuaTeX-ja project team.
+?
+\end{lstlisting}
+%<*ja>
+というエラーが出る.
+%</ja>
%<en>\subsection{Structure of JFM file}
%<ja>\subsection{JFMファイルの構造}
\texttt{'right'}のいずれかである.もしこれら3つのフィールドのうちの1つが省かれた
場合,\texttt{left}と\texttt{down}は0,\texttt{align}フィールドは
\texttt{'left'}であるものとして扱われる.
-これら3つのフィールドの意味については図 \ref{fig-pos} で説明する.
+これら3つのフィールドの意味については図\ref{fig-pos}で説明する.
%</ja>
+ %<*zh>
+ 此部分为“真实”字形对齐位置。\texttt{align}的合法值为\texttt{'left'},
+ \texttt{'middle'}和\texttt{'right'}。如此三项被省略,则\texttt{left}和
+ \texttt{down}被视作0,\texttt{align}被视作\texttt{'left'}。
+ 此部分三个域的作用,请参见图\ref{fig-pos}。
+ %</zh>
%<*en>
In most cases, \texttt{left} and \texttt{down} fields are~0, while
クラス0の文字」として扱われていた文字であり,その結果として\pTeX より細か
い組版調整ができるようになっている.以下でその一覧を述べる:
%</ja>
-\pTeX中式被视作字符集0中字符。故此,\LuaTeX-ja可以比\pTeX做得更好。
+ %<*zh>
+ 如上所述,你可以在\texttt{chars}中设定多个“假想字符”。这些字符中的多数字符在
++\pTeX 中式被视作字符集0中字符。故此,\LuaTeX-ja可以比\pTeX 做得更好。
+ 下列为“假想字符”列表:
+ %</zh>
\begin{list}{}{\def\makelabel{\ttfamily}\def\{{\char`\{}\def\}{\char`\}}\advance\leftmargin1\zw}
\item['lineend']
%<en>An ending of a line.
\item['parbdd']
%<en>The beginning of an (indented) paragraph.
%<ja>通常の(\verb+\noindent+ で開始されていない)段落の先頭.
+ %<zh>缩进段落开头。
\item['jcharbdd']
--%<en>A boundary between \textbf{JAchar} and anything else (such as \textbf{ALchar}, kern, glue, ...).
++%<en>A boundary between \textbf{JAchar} and anything else (such as \textbf{ALchar}, kern, glue,\,\ldots).
%<ja>和文文字と「その他のもの」(欧文文字,glue,kern等)との境界.
+ %<zh>日文字符和其他(如\textbf{ALchar},胶,出格等)边界。
\item[$-1$]
%<en>The left/right boundary of an inline math formula.
%<en>\paragraph{Porting JFM from \pTeX}
%<ja>\paragraph{\pTeX 用和文フォントメトリックの移植}
-%<zh>\paragraph{\pTeX下使用的JFM移植}
++%<zh>\paragraph{\pTeX 下使用的JFM移植}
% ToDo: English version.
%<*en>
--...
++\ldots
%</en>
%<*ja>
\par 〔◆◆←全角二分下がり
\end{LTXexample}
\end{itemize}
-\ltjsetparameter{jacharrange={-3}}
+
+但し,\verb+\everypar+ を利用している場合にはこの仕組みは正しく動かない.
+そのような例としては箇条書き中の \verb+\item+ で始まる段落があり,\Pkg{ltjsclasses}では
+人工的に「\texttt{'parbdd'}の意味を持つ」whatsitノードを作ることによって対処している%
+\footnote{\texttt{no\_runtime/ltjsclasses.dtx} を参照されたい.
+JFM側で一部の対処ができることにより,\Pkg{jsclasses}のようにif文の判定はしていない.}
%</ja>
-下面,给出用于\pTeX使用的JFM移植到\LuaTeX-ja过程中需要注意的几点。
+ %<*zh>
++下面,给出用于\pTeX 使用的JFM移植到\LuaTeX-ja过程中需要注意的几点。
+ %</zh>
+
%<en>\subsection{Math Font Family}
%<ja>\subsection{数式フォントファミリ}
また,それぞれのパラメータの右上にある記号には次の意味がある:
%</ja>
\begin{itemize}
++%<*zh>
++\item % avoiding from error ``Something's wrong--perhaps a missing \item.''.
++%</zh>
%<*en>
\item No mark: values at the end of the paragraph or the hbox are
adopted in the whole paragraph/hbox.
\item[\Param{jatextfont}\,=\{<jfam>,<jfont\_cs>\}]
%<en>[\verb+\textfont+ in \TeX]
%<ja>[\TeX の \verb+\textfont+]
-%<zh>[\TeX中的\verb+\textfont+]
++%<zh>[\TeX 的\verb+\textfont+]
\item[\Param{jascriptfont}\,=\{<jfam>,<jfont\_cs>\}]
%<en>[\verb+\scriptfont+ in \TeX]
%<ja>[\TeX の \verb+\scriptfont+]
-%<zh>[\TeX中的\verb+\scriptfont+]
++%<zh>[\TeX 中的\verb+\scriptfont+]
\item[\Param{jascriptscriptfont}\,=\{<jfam>,<jfont\_cs>\}]
%<en>[\verb+\scriptscriptfont+ in \TeX]
%<ja>[\TeX の \verb+\scriptscriptfont+]
-%<zh>[\TeX中的\verb+\scriptscriptfont+]
++%<zh>[\TeX 中的\verb+\scriptscriptfont+]
\item[\Param{yjabaselineshift}\,=<dimen>$^\ast$]\
\item[\Param{yalbaselineshift}\,=<dimen>$^\ast$] [\verb+\ybaselineshift+]
このパラメータは\pTeX の \verb+\inhibitxspcode+ プリミティブと似ているが,
互換性はない.
%</ja>
-
+ %<*zh>
-此参数类似\pTeX基本语句\verb!\inhibitxspcode!,但是和\verb!\inhibitxspcode不兼容。!
++此参数类似\pTeX 基本语句\verb!\inhibitxspcode!,但是和\verb!\inhibitxspcode!不兼容。
+ %</zh>
\item[\Param{alxspmode}\,=\{<chr\_code>,<mode>\}] [\verb+\xspcode+]
%<*en>
%<*ja>
以下のプリミティブは\pTeX との互換性のために実装されている:
%</ja>
-下列基本语句的实现与\pTeX兼容:
+ %<*zh>
++下列基本语句的实现与\pTeX 兼容:
+ %</zh>
\begin{list}{}{\def\makelabel{\ttfamily\char92 }\advance\leftmargin1\zw}
\item[kuten]
\item[jis]
%<*ja>
この例を援用して,\verb+\inhibitglue+ の仕様について述べる.
%</ja>
+ %<*zh>
+ 如上例子,我们注意到\verb!\inhibtglue!的用法。
+ %</zh>
\begin{itemize}
++%<*zh>
++\item
++%</zh>
%<*en>
\item The call of \verb+\inhibitglue+ in the (internal) vertical mode is
simply ignored.
%</ja>
\item[adjustbaseline]
--...
++\ldots
\item[fontfamily\{<family>\}]
{\let\item\origitem
どのファミリが変更されるかは以下のようにして決定される:
%</ja>
\begin{itemize}
++%<*zh>
++\item
++%</zh>
%<*en>
\item Let current encoding scheme for Japanese fonts be
<ja-enc>. Current Japanese font family will be changed to
\item A font definition named \texttt{<enc><ja-enc>.fd} (the file name is
all lowercase) exists.
%</en>
++%<*zh>
++\item
++%</zh>
%<*ja>
\item フォント定義ファイル\texttt{<enc><ja-enc>.fd}(ファイル名は全て小文字)が存在する.
%</ja>
以下の点で通常の文字と異なる:
%</ja>
\begin{itemize}
++%<*zh>
++\item
++%</zh>
%<*en>
\item Always treated as \textbf{JAchar}s.
%</en>
\item[\textit{line\_end} (5)]
%<*en>
--Kerns for ...
++Kerns for \ldots
%</en>
%<*ja>
--カーン ...
++和文文字が行末にきたとき,行末との間に挿入されるカーンである.
++% ぶら下げ組への応用
%</ja>
\item[\textit{kanji\_skip} (6)]
\item[\textit{processed} (8)]
%<*en>
--Nodes which is already processed by ...
++Nodes which is already processed by \ldots.
%</en>
%<*ja>
--... によって既に処理されたノード.
++\LuaTeX-ja の内部処理によって既に処理されたノード.
%</ja>
\item[\textit{ic\_processed} (9)]
$t$とすると:
%</ja>
\begin{itemize}
++%<*zh>
++\item
++%</zh>
%<*en>
\item If there is no \textit{stack\_flag} node in the list of the hbox, then
no assignment was occurred inside the hbox. Hence values of
%<*ja>
\item カテゴリーコード9(無視する文字),14(コメント文字),15(無効文字)は上の図では省かれている.
%</ja>
++%<*zh>
++\item
++%</zh>
\end{itemize}
%<en>\caption{State transitions of \pTeX's input processor.}
%<ja>\caption{\pTeX の入力処理部の状態遷移.}