和欧混植と句読点 (2001.3.11作成)

慶應義塾大学 理工学部 物理情報工学科

内山孝憲


和欧混植と句読点

和文と英文が混ざるときの句読点として使うカンマとピリオドはどうしたらよいのか困ります. 日本語の組版のルールに従うためには, 和文のカンマとピリオドを使うべきです. しかし, 私も1 byteのカンマとピリオドを使っています. Computer ModernのカンマとRyumin-Lightのカンマのデザインが違うことが, 気になるからです.

そこで, Computer ModernのカンマをRyumin-Lightのカンマに置き換える virtual fontを作ってみました. TeXで組版するときには, cmr10.tfmを使い, dvipsで印刷するときに, cmr10のカンマ(ついでに括弧も)をRyumin-Lightに置き換えるvirtual fontです. もちろん, フォントと文字コードを置き換えるだけでは, 文字の位置がずれてしまいます. cmr10に定義されている文字幅とRyumin-Lightの実ボディの位置から, 位置の補正量を計算してあります. 具体的には, cmr10に定義されているグリフの中心にRyumin-Lightの実ボディの中心を合わせました.

まず, 最初にjsarticleで組版し, カンマや括弧を置き換えていない例を示します.

abcの後のカンマがcmr10のカンマです. ベースラインより下に, Ryumin-Lightのカンマより伸びていること, また細いことが分かります. Ryumin-Lightより細い, つまりウエイトが小さいように感じられるので, 和文の句読点の部分に使うと, 弱々しい感じがします. そうは言っても, 私にとっては, 欧文部分と和文部分でカンマのデザインが違うことの方が気になり, 混在したくありませんでした. しかし, 全部2 byteで組と, 欧文部分が間延びしてみえます. とくに欧文の参考文献リストを記述するときに気になります.

次に, cmr10のカンマおよび括弧をRyumin-Lightのカンマに置き換えた例を示します.

印象が随分違って見えると思います. これだと1 byteと2 byteを混在で書き, 和文の句読点としてのカンマやピリオドには2 byteの文字を使ってみようかなという気になります.

上記の例をPDFにしたものもあります. Ryumin-Lightとcmr10をembedしていますので, Acrobat Readerがインストールされていれば, 欧文版でも表示・印刷できます. (cmr10のカンマのままのもの, Ryumin-Lightのカンマにおきかえたもの)


タイプセットした文章は以下のものです.
\documentclass{jsarticle}
\begin{document}
句読点としてカンマとピリオドを使用する場合に,和文と欧文で異なるフォン
トが混在することになります.
日本語の組版の規則を活かすためには,句読点には2 byteのものを使うべきで
す.

しかし,欧文部分の「,」と和文部分のカンマ「,」のデザインが違うのが
気になります.欧文部分はComputer Modernのcmr10なのに,和文部分はリュウ
ミンライト(Ryumin-Light)を使うからです.以下の例の2つめでは,「abc」の後
に「,」と空白を記述しています.2つめでは,「abc」の後は和文の「,」で
す.
間延びしてみえるのが気になります.欧文の組版の規則が適用される方がよい
のではないかと思います.
\begin{enumerate}
\item abc, jklおよびxyzを容器に入れて, 10分加熱します. (全部1 byte)
\item abc, jklおよびxyzを容器に入れて,10分加熱します.(abcの直後のみ1
byte)
\item abc,jklおよびxyzを容器に入れて,10分加熱します.(全部2 byte)
\end{enumerate}

括弧類も問題です.日本語の部分では,日本語(にほんご)のように和文の括
弧を使用することで,日本語の組版になります.デザイン的にもグリフの大き
さやベースラインの位置が正しくなります.
困るのは,やはり欧文と和文が混ざる部分です.

\begin{enumerate}
\item 日本語(Japanese)日本語,English(英語)Englisch(engelska)Engels
\item 日本語(Japanese)日本語, English (英語) Englisch (engelska) Engels
\item 日本語[Japanese]日本語,English[英語]Englisch[engelska]Engels
\item 日本語[Japanese]日本語, English [英語] Englisch [engelska] Engels
\end{enumerate}

\end{document}


cmr10.vfを作成する際に使ったのは, cmr10.vplです. Omega用のvirtual font作成プログラムovp2ovfでcmr10.vfを作成します. dvipsではPKやtype 1のcmr10を先にみつけないように, psfonts.cmzなどのマップファイルを修正してください. 多くの場合は,
cmr10 CMR10 <cmr10.pfb
を消すことになるでしょう. また, virtual font内で使用しているcmr10を使うための名称がCMR10になっていますので,
CMR10 CMR10 <cmr10.pfb
を追記する必要があるでしょう. ここでは, 置き換える文字以外のcmr10を使うために, CMR10の名前を使っています. $TEXMF/aliasesに
cmr10.tfm CMR10.tfm
を追加するなり, シンボリックリンクを作成するなり, コピーするなりでCMR10.tfmを用意してください.


その他

このページは,自由にリンクしてかまいません.このページに関するお問い合わせは,電子メールでuchiyama@appi.keio.ac.jpまでお願いします.


MacpTeXのweb pageに戻る.