total: 507667   today: 46

TeXスタイルファイル

むかし作った自作のTeXスタイルファイルを配布しています。 プレゼンテーションスライド用のslide.sty、 簡易レポート用のreport.sty、長大な資料用のbook.sty、 2段組み論文用のtwocol.styを用意しています。

slide.styは、主に学会発表や研究室ミーティングなど、 論理的な内容を正確に伝えることが重要視される場面で、 わかりやすく情報量の多いスライドを作るための工夫をしています。 マージンを極限まで詰めて、本文領域を最大限に拡大しているので、 通常のプレゼンテーションソフトと比べると、1スライドに入れられる文字量がかなり多くなっています。

見本

プレゼンテーションスライド用:slide.sty
見本のPDF  TeXのソース
簡易レポート用:report.sty
見本のPDF  TeXのソース
長大な資料用:book.sty
見本のPDF(内容的には執筆途中)  TeXのソース(内容的には執筆途中)
2段組み論文用:twocol.sty
見本のPDF  TeXのソース

ダウンロード

スタイルファイル一式は以下からダウンロードできます:

ダウンロードしたあと、
$ tar xvf style.tar.gz
$ cd style
$ ls
book.sty  common.sty  report.sty  slide.sty  twocol.sty
のように展開すると、5つのスタイルファイルが含まれています。 これらすべてを、TeXソースファイルと同じディレクトリに入れて利用してください。 内部で、eclbkbox.styを使っていますので、 eclbkbox.styもダウンロードして同じディレクトリに入れてください。

使い方

共通で利用できるコマンド

次のコマンドがすべてのスタイルファイルで使えます:
  • \date{\mytoday}:\date{\today}の書体をおしゃれにしたもの
  • \red{文章}:文章を赤文字にする
  • \blue{文章}:文章を青文字にする
  • \bfred{文章}:文章を赤文字かつ太字にする
  • \I、\II、\III、\IV、\V、\VI:それぞれI、II、III、IV、V、VIの形を整えたもの

slide.sty

基本ルール

ドキュメントクラスは次のように記述します:
\documentclass[25pt,landscape,papersize]{jsarticle}
\usepackage{slide}
\documentclassのオプションのフォントサイズは25ptに固定です。 他のフォントサイズを使うとデザインが乱れます。

\maketitleで発表タイトルスライド、\sectionで章タイトルスライド、\subsectionで通常スライド1枚が出力されます。 通常スライドでは、itemize環境、enumerate環境、description環境で内容を記述して、必要に応じて\figコマンドで図を挿入します。 \figコマンドの第一引数が縮小率、第二引数が図のファイル名です。 例を示します:
\documentclass[25pt,papersize,landscape]{jsarticle}  %%% お約束
\usepackage{slide}  %%% お約束
\title{アドレス空間の大きさに制限されない\\スレッド移動を実現するPGAS処理系}
\author{東京大学 原健太朗、田浦健次朗}
\def\year{2010}
\def\month{8}
\def\day{5}
\date{\mytoday}

\begin{document}

\maketitle  %%% 表紙スライド

\section{序論}  %%% 章スライド

\subsection{背景と目的} %%% 通常スライド

\begin{itemize}
\item 背景:大規模な並列科学技術計算
  \begin{itemize}
  \item 応力解析
  \item 流体解析
  \item 地震シミュレーション
  \item ...
  \end{itemize}
\item 目的:\bfred{大規模な並列科学技術計算をクラウド上で効率的に実行できる
  並列分散プログラミング処理系を作る}
\end{itemize}

\subsection{クラウドとは何か?}

\begin{itemize}
\item クラウドのしくみ:
  \begin{itemize}
  \item プロバイダがデータセンタを構築・管理して、
    それらの計算資源をサービスとして提供
  \item ユーザは、それらの計算資源を従量性課金のもとで必要なときに必要なだけ利用可能
  \end{itemize}
\item モデル:\bfred{多数の計算資源を多数のユーザで利用}
  \begin{itemize}
  \item 計算資源はどうスケジューリングされるのか?
  \end{itemize}
\end{itemize}
\up{14}   %%% 図の位置を詰める
\fig{0.26}{slide_cloudservice.eps}  %%% 図を挿入

(中略)

\end{document}

図の挿入位置を上下に調節したい場合には\upコマンドが便利です。 \up{24}と書くと、\vspace*{-24pt}と書いたことと同じ意味になります。 ちなみに、eps形式のきれいな図を簡単に描くソフトとしてはinkscapeがおすすめです。 Linuxでも軽快に使えます。

Thank youスライド

\thankyouコマンドで、Thank youと描かれたページを出力できます。 スライドの一番最後に使います:
\thankyou

\up{-100}
Are there any questions?

アニメーションスライド

アニメスライドを作るには、\animeコマンドを使います。 \animeコマンドは引数を3個取り、 第一引数はアニメ開始番号、第二引数はアニメ終了番号、第三引数は各アニメスライドのソースです。 各アニメスライドのソースが、(アニメ終了番号-アニメ開始番号+1)回繰り返して出力されます。 各アニメスライドのソース中では、\animecounterコマンドによってそのアニメスライドのアニメ番号を参照でき、 \animenumberコマンドによってそのアニメスライドのアニメ番号を()で囲った文字列を参照できます。 具体的には、
\anime{1}{3}{
\subsection{アニメ\animenumber}
このスライドはアニメスライドです
\fig{0.5}{anime_fig\animecounter.eps}
}
と記述しておくと、これは、
\subsection{アニメ(1)}
このスライドはアニメスライドです
\fig{0.5}{anime_fig1.eps}

\subsection{アニメ(2)}
このスライドはアニメスライドです
\fig{0.5}{anime_fig2.eps}

\subsection{アニメ(3)}
このスライドはアニメスライドです
\fig{0.5}{anime_fig3.eps}
と記述したことと等価になります。 つまり、anime_fig1.eps、anime_fig2.eps、anime_fig3.eps、...のような名前の画像ファイルを作っておき、 あとは\animeコマンドで「ループ」させればOKです。

report.sty

ドキュメントクラスは次のように記述します:
\documentclass[10pt]{jsarticle}
\usepackage{report}
\documentclassのオプションのフォントサイズとしては10pt、12pt、14ptなどを使用できますが、 あまり大きくしたり小さくしたりするとレイアウトが乱れます。 10ptもしくは12ptがおすすめです。

文法は、通常のjsarticleと同様で、\section、\subsection、\subsubsection、 itemize環境、enumerate環境、description環境など使って記述します。

report.sty独自の環境として、プログラムを記述するためのcode環境があります。 code環境内に記述した文章が枠囲みになります。 複数ページにまたがっても問題ありません。 たとえば次のように使います:
ソースコードも書いてみます。
次の関数は、100以下の任意の整数xに対して常に91を出力します:
\begin{code}
#define N 100

int MacCarthy(int x)
{
  if(x > N) return x - 10;
  return MacCarthy(MacCarthy(x + 11));
}
\end{code}

book.sty

ドキュメントクラスは次のように記述します:
\documentclass[report,10pt]{jsbook}
\usepackage{book}
\documentclassのオプションのフォントサイズとしては10pt、12pt、14ptなどを使用できますが、 あまり大きくしたり小さくしたりするとレイアウトが乱れます。 10ptもしくは12ptがおすすめです。 文法は、通常のjsbookと同様で、\chapter、\section、\subsection、\subsubsection、 itemize環境、enumerate環境、description環境など使って記述します。 report.styと同様にcode環境を利用できます。

twocol.sty

ドキュメントクラスは次のように記述します:
\documentclass[report,10pt]{jsbook}
\usepackage{twocol}
\documentclassのオプションのフォントサイズとしては10pt、12pt、14ptなどを使用できますが、 あまり大きくしたり小さくしたりするとレイアウトが乱れます。 10ptもしくは12ptがおすすめです。

ライセンス

再利用、再配布、改変など無断で自由にご利用していただいてかまいません。