C75へ向けてLaTeXで縦書き組版の準備を開始した!

冬コミには申し込むことにしました.ただ,コミケは結構落とされるので,本当にサークル参加できるかは まだまだわかりません>< 

ジャンルはとりあえず「文芸」で行きます.私に人様に買って頂く絵は描けませんので,文章中心で. 一応物語で書く予定です.テーマは大体決まっていますが,構想はまだまだ全然ですのでこれから がんばろうと思います.また,ある程度見えてきたら,自分で表紙と挿絵を1枚程度は描いてみたいと 思います.こちらは努力目標で,駄目な場合は誰かに外注するかもorz

Wordで組版が許されるのは,小学生までだよねぇ~ 組版はLaTeXで

で,どのように組版をするかですが,ここでWordを使うなんてことは私のプライドが許しませんので, 早速LaTeXで組むことにしました.いつもどおり「形」を先に作らないと創作意欲が湧かないので まずここから始めるのがいつもの私です.

tbook.clsのカスタマイズ

横書きでもいいのですが,せっかく小説もどきを書くのであれば縦書きにしたいなぁと思いまして, pLaTeX標準のtbookクラスを使うことにしました.しかし,結構問題アリのクラスだったので, このページを参考にしながら自分でちょっといじくりました.

まず,TeXのフォルダの中から「tbook.cls」を見つけてきて,作業フォルダに「mytbook.cls」というファイルで コピーします.次にこれを開いて,「\ProvidesClass」の中を「mytbook」に一応変えておきます. 基本的にこいつをいじくることでクラスをカスタマイズしていきます.

こいつでの問題点は,latemxkを回してPDFを生成させたときに,ページサイズが無視されて 全部A4に貼りつけた形になってしまうことでした.コピー本の予定なので,A5で組版してほしいのでちょっと 困ります.解決はdvipdfmx実行時にオプションをつけてあげれば良いらしいのですが,latexmkで 一気にやっているのでこの内容をソースに含めてやる必要があります.

実はjsarticle.clsはそれをすでに組み込んでいまして,オプションに「papersize」をつけてあげると PDFのサイズを変更してくれます.そこでjsarticle.clsから相当する個所をコピペすることで 解決しました.実際やっている内容は,オプションにpapersizeが存在したら, dviファイルの頭にdvipdfmx用のオプションを書き込んでいるだけみたいです.そこから先の細かい 動作は知りませんが,まぁ動くので良しということで^^

実際にやったことは,「\DeclareOption」が並んでいるなかの適当な所に以下を追加.

\newif\ifpapersize
\papersizefalse
\DeclareOption{papersize}{\papersizetrue}

もうちょっと下の方にある「\ProcessOptions」の後の適当な行に以下を追加.

\ifpapersize
  \setlength{\@tempdima}{\paperwidth}
  \setlength{\@tempdimb}{\paperheight}
  \iftombow
    \advance \@tempdima 2in
    \advance \@tempdimb 2in
  \fi
  \AtBeginDvi{\special{papersize=\the\@tempdima,\the\@tempdimb}}
\fi

ソースファイル

このクラスを使って,こんなTeXファイルを作ります.ソースは章ごとに別立てするとして, まずmain.texはこんな感じ.

\documentclass[a5j,openany,papersize,oneside]{mytbook}
\begin{document}

\frontmatter
\tableofcontents
\mainmatter

\include{chap01}
%\include{chap02}
%\include{chap03}

\backmatter
\include{end}

\end{document}

あとは,章ごとのTeXファイルを「chap01.tex」などとして,一緒のフォルダに置いとけばOK. chap01.texの内容はこんな感じ.

\chapter{てすとてすと}
ああああああああああああああああああああああ
ああああああああああああああああああああああ
ああああああああああああああああああああああ
ああああああああああああああああああああああ
ああああああああああああああああああああああ
ああああああああああああああああああああああ
ああああああああああああああああああああああ

おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお
おおおおおおおおおおおおおおおおおおおおお

もう一回クラスをカスタマイズ

それから,目次や章の先頭で「第○章」とかデカデカと出るとちょっとカッコ悪いので,またクラスファイルを いじります.ファイルの最後の方にある以下の部分から「第」と「章」を消せばOK.消したあとこんな感じ.

\newcommand{\prechaptername}{}%変更 「第」
\newcommand{\postchaptername}{}%変更 「章」

それから,章の名前のフォントをちょっと小さくするために「\def\@makechapterhead#1{\hbox{}% 」とかいう行のちょっと下にある以下を編集.

%   \reset@font\huge\bfseries
   \reset@font\large\bfseries

最後に奥付も参考サイトに書いてあったので参考にして一応つけました(end.tex)が,これは変えるかも.

\thispagestyle{empty}
\begin{flushright}
%\newpage

 |||||||||||||||||||||||||\\

 \huge\textbf{てすと}\\
 \vspace{2zw}

 \small{平成あああ 印刷}\\

 \small{平成あああ 発行}\\
 \vspace{1zw}
 \normalsize{著 者  }\LARGE{あああ}\\
 \vspace{1zw}
 \normalsize{発行者  }\LARGE{あああ}\\
 \vspace{1zw}
 \normalsize{印刷者  }\LARGE{あああ}\\
 \vspace{1zw}
 \normalsize{発行所  }\huge{あああ}\\

 ||||||||||||\\

\end{flushright}

この状態でlatexmkまわしてPDFにしたものが以下のファイル.まずまず.

ということで,これで各章ごとにテキストを書き込めば,TeXをまわすだけでさくっとA5版の完成ですね. もしかしたら気合い入ったら印刷所を使うかも知れませんが,まぁそれは完成してから考えよう. というか,当選してから考えよう^^