TeX Live(およびそれに準ずるTeX配布)で「comicsansパッケージ」をインストールする手順を説明してみる。
最初に注意してみる
- Windowsでは当然Comic Sans MSが付属しているはずであるが、Windows 8以降に付属する新しい版のComic Sans MSについてはcomicsansパッケージはサポートしていないので使えない。ここで説明する手順に従って古い版のComic Sans MSを導入する方法はWindowsでも有効であるが、OSのフォントを古い版で上書きしてしまわないように十分に注意すること。
- ★印を付けた操作は管理者権限(例えば“sudo”を付けるなど)が必要である。
手順を説明してみる
①comicsansのパッケージをダウンロードする
- CTANのページを開く。
CTAN: Package comicsans - “comicsans.tds.zip”のリンクから、その名前のファイルをダウンロードする。
※“Download”から得られる「comicsans.zip」ではないので注意。 - “Package Documentation”のリンクをたどって、マニュアルを開く。
※あるいは、何らかの方法で、zip内にあるcomicsans.pdfを開く。
②マニュアルの手順に従う
2.1 Acquire and install the TrueType files
- フォントファイル(comic.ttf、comicbd.ttf)の取得は書いてある通り。
- ★フォントファイルを次の場所に配置する:
$TEXMFLOCAL/fonts/truetype/microsoft/comicsans/
2.2 Generate the italic and/or Cyrillic variants (optional)
- これは、TeX外のシステム依存の話なので、がんばる。あるいは、optionalなのでがんばらなくてもよい。
※マニュアルの説明の中に「cyrfinst package」なるものが登場するが、要するに、t2a.encがあればよく、TeX Liveのフルインストールなら入っているはずである。(kpsewhich t2a.enc
で確認できる。)ない場合は、TeX Liveのインストールにcollection-langcyrillicを追加する。(もちろん、キリル文字を使う予定がないなら不要。)
2.3 Install font files and refresh TeX’s database
この節に相当する手順は以下のようになる:
- ★先ほどダウンロードしたcomicsans.tds.zipを
$TEXMFLOCAL
の下で展開する。 - ★2.2の手順を行った場合は、生成されたフォントファイル(*.pfb)を以下の場所に配置する:
$TEXMFLOCAL/fonts/type1/microsoft/comicsans/
- ★「
mktexlsr
」を実行する。
※Texdocが利用可能な場合、これ以降は「texdoc comicsans
」でインストールしたcomicsans.pdfが開くようになるはず。
2.4 Point the TeX backends to the comicsans files
この節に相当する手順は以下のようになる:
- ★「
updmap-sys --enable Map comicsans.map
」を実行する。
③動作確認する
以下のような簡単なテストファイルを用意する。
\documentclass{article} \usepackage{comicsans} \begin{document} \section{A Simple Test} Hello, comic {\TeX} world! \[ \lim_{x\to0}\frac{\sin x}{x} = 1 \] \end{document}
このソースファイルを、以下の各々のワークフローで普通にビルドして、正常にPDFが生成されるかを調べる。
- pdflatex
- (p)latex → dvipdfmx
成功の場合、以下の出力が得られるはずである。
さらに蛇足してみる
Type1フォントを作らない方法
dvipdfmxの場合は、わざわざType1フォントに変換しなくても、元のTrueTypeフォントのままでイタリック(擬似斜体)を使うことができる。(pdfTeXでは不可。)その設定に変更する手順を示す。
※管理者権限が必要。
①まず、$TEXMFLOCAL/fonts/map/dvips/comicsans/comicsans.map
を開いて、31~32行目を以下のように書き換える。
rcomico8r ComicSansMS "0.167 SlantFont" <rcomic8r.pfb rcomicbdo8r ComicSansMS-Bold "0.167 SlantFont" <rcomicbd8r.pfb rcomiccyro ComicSansMS "0.167 SlantFont" <rcomiccyr.pfb rcomiccyrbdo ComicSansMS-Bold "0.167 SlantFont" <rcomiccyrbd.pfb
rcomico8r ComicSansMS "0.167 SlantFont TeXBase1Encoding ReEncodeFont" <8r.enc <comic.ttf rcomicbdo8r ComicSansMS-Bold "0.167 SlantFont TeXBase1Encoding ReEncodeFont" <8r.enc <comicbd.ttf rcomiccyro ComicSansMS "0.167 SlantFont T2AAdobeEncoding ReEncodeFont" <t2a.enc <comic.ttf rcomiccyrbdo ComicSansMS-Bold "0.167 SlantFont T2AAdobeEncoding ReEncodeFont" <t2a.enc <comicbd.ttf
②その上で、updmap-sys
を(オプションなしで)実行する。
以下にサンプルを示す。
\documentclass{article} \usepackage{comicsans} \begin{document} % \emph が斜体になる. \section{A \emph{Very} Simple Test} Hello, \emph{comic} {\TeX} world! \end{document}
文書の一部だけComic Sans MSにする
comicsansパッケージを読み込む(\usepackage{comicsans}
)と、文書のメインのフォントがComic Sans MSに変更されてしまうため、「メインのフォントは変えずに、文書の一部だけComic Sans MSを使いたい」という場合には対応できない。実は、comicsansをインストールした時点で、Comic Sans MSが「comic
」という(NFSSの)ファミリ名で使えるようになっているので、一部だけ使いたい場合はパッケージを使用せずに直接ファミリを切り替えればよい。
\documentclass{article} %% \textcomic{テキスト}: Comic Sans MSで出力する. \newcommand{\textcomic}[1]{% {\fontfamily{comic}\selectfont #1}} \begin{document} % 一部だけComic Sans MSにする. Hello, \textcomic{comic} {\TeX} world! \end{document}
まとめ
Comic Sans MSは用法・用量を守って正しく使いましょう(多分)。
追記:さらにさらに蛇足してみる
LuaLaTeXとかXeLaTeXとかの場合
もちろん、LuaLaTeX・XeLaTeXを使っているのなら、fontspecパッケージの機能を利用してComic Sans MSを利用できる。なので普通はそもそもcomicsansパッケージは不要である。
% LuaLaTeX/XeLaTeX \documentclass{article} \usepackage{fontspec} % ファイル名で指定する場合 \setmainfont{comic.ttf}[BoldFont=comicbd.ttf] % フォント名で指定する場合(環境依存) %\setmainfont{Comic Sans MS} \begin{document} Hello, comic {\TeX} world! \end{document}
しかし、数式でComic Sans MSを使いたいのであれば、comicsansパッケージを使うのが妥当であろう1。この場合は、一般的な「fontspecと数式フォントパッケージと組み合わせる」場合のノウハウに従えばよい。つまり:
- まず数式フォントパッケージ(つまりcomicsans)を読み込む。
- 次にfontspecを
no-math
オプションを付けて読み込む。これでテキスト用フォントはfontspecの初期設定に戻る(数式フォントパッケージの設定は消える)。 - 改めてテキスト用フォントをfontspecの機能で設定する。
% LuaLaTeX/XeLaTeX \documentclass{article} \usepackage{comicsans} \usepackage[no-math]{fontspec} \setmainfont{comic.ttf}[BoldFont=comicbd.ttf] \begin{document} Hello, comic {\TeX} world and $e^{\pi i} = -1$. \end{document}
ただし注意がある。この設定では、テキスト用フォントについてはfontspecの機能を使って「TrueTypeフォントを直接指定している」ので、マップファイル(comicsans.map)の設定は使われていない2。なので、イタリックの指定は無効になる。合成斜体によるイタリックを有効にするには、fontspecのFakeSlant指定を利用すればよい3。
% ファイル名で指定する場合 \setmainfont{comic}[Extension=.ttf, BoldFont=*bd, ItalicFont=*,ItalicFeatures={FakeSlant=0.167}, BoldItalicFont=*bd,BoldItalicFeatures={FakeSlant=0.167}] % フォント名で指定する場合(環境依存) %\setmainfont{Comic Sans MS}[ % ItalicFont=*,ItalicFeatures={FakeSlant=0.167}, % BoldItalicFont={* Bold},BoldItalicFeatures={FakeSlant=0.167}]
イタリックと数式を含む完全な形のサンプルを挙げておく。
% LuaLaTeX/XeLaTeX; UTF-8 \documentclass{article} \usepackage{comicsans} \usepackage[no-math]{fontspec} \setmainfont{comic}[Extension=.ttf, BoldFont=*bd, ItalicFont=*,ItalicFeatures={FakeSlant=0.167}, BoldItalicFont=*bd,BoldItalicFeatures={FakeSlant=0.167}] \begin{document} \section{\emph{Comic} Lua{\LaTeX}} \begin{itemize} \item \TeX-lingvo estas \emph{danĝera!} \item \TeX-язык — \emph{опасен!} \item Η γλώσσα \TeX\ είναι \emph{επικίνδυνη!} \item $\displaystyle \frac{1}{1^2} + \frac{1}{2^2} + \frac{1}{3^2} + \cdots = \frac{\pi^2}{6}$. \end{itemize} \end{document}