むかし作った自作のTeXスタイルファイルを配布しています。 プレゼンテーションスライド用のslide.sty、 簡易レポート用のreport.sty、長大な資料用のbook.sty、 2段組み論文用のtwocol.styを用意しています。
slide.styは、主に学会発表や研究室ミーティングなど、 論理的な内容を正確に伝えることが重要視される場面で、 わかりやすく情報量の多いスライドを作るための工夫をしています。 マージンを極限まで詰めて、本文領域を最大限に拡大しているので、 通常のプレゼンテーションソフトと比べると、1スライドに入れられる文字量がかなり多くなっています。
$ tar xvf style.tar.gz $ cd style $ ls book.sty common.sty report.sty slide.sty twocol.styのように展開すると、5つのスタイルファイルが含まれています。 これらすべてを、TeXソースファイルと同じディレクトリに入れて利用してください。 内部で、eclbkbox.styを使っていますので、 eclbkbox.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でも軽快に使えます。
\thankyou \up{-100} Are there any questions?
\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です。
\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}
\documentclass[report,10pt]{jsbook} \usepackage{book}\documentclassのオプションのフォントサイズとしては10pt、12pt、14ptなどを使用できますが、 あまり大きくしたり小さくしたりするとレイアウトが乱れます。 10ptもしくは12ptがおすすめです。 文法は、通常のjsbookと同様で、\chapter、\section、\subsection、\subsubsection、 itemize環境、enumerate環境、description環境など使って記述します。 report.styと同様にcode環境を利用できます。
\documentclass[report,10pt]{jsbook} \usepackage{twocol}\documentclassのオプションのフォントサイズとしては10pt、12pt、14ptなどを使用できますが、 あまり大きくしたり小さくしたりするとレイアウトが乱れます。 10ptもしくは12ptがおすすめです。