2012年05月29日 情報科学類 コンピュータリテラシ 筑波大学 システム情報系 情報工学域 新城 靖 <yas@cs.tsukuba.ac.jp>
このページは、次の URL にあります。
http://www.coins.tsukuba.ac.jp/~yas/coins/literacy-2012/2012-05-29
あるいは、次のページから手繰っていくこともできます。
http://www.coins.tsukuba.ac.jp/~yas/
http://www.cs.tsukuba.ac.jp/~yas/
HTML で記述できる文書の構造:
CSS で記述できる表示の方法:
今日の課題では、 練習問題(601) ことえりのバックスラッシュ入力 を行い、キーボードの「¥(円号)」でバックスラッシュが入力されるようにす ると楽である。
TeX (テフ、テック、タオ・イプシロン・カイ) は、D.E.Knuth による文書整形 システム。マークアップ言語によりテキストファイルにTeX の命令を埋め込ん だ文書を作成し、言語処理系(texコマンド)を使うと、印刷に適したものになる。
LaTeX (ラテフ、レイテック)は、TeX を拡張して、論文を簡単に書くために適 した命令を増やしたもの。L.Lamport による。
pTeX (pLaTeX) は、publisher ASCII出版で、TeX, LaTeX で日本語が使えるよ うにしたもの。coins で利用可能な物はこれの漢字コードとして EUC が使える ものである。その他に、NTT により日本語化されたものもある。
TeX は、マクロプロセッサの一種。マクロとは、文字列の置き換えのこと。一 般的には、短い文字列から長い文字列、簡単な文字列から複雑な文字列に変換 (展開)する。
様々なマクロ定義をまとめたものを「パッケージ」という。 \usepackage により取り込んで使うことができる。 自分でマクロ定義を行うこともできる。
.tex
)を作成/編集する。
dvi 形式をPostScipt 形式に変換し、GhostScript (gs コマンド, gv コマンド) で表示する方法がある。プレビュー.app(Preview.app)でも、PostScript 形式の ファイルを(一旦PDFに変換して)画面に表示できる。
HTMLで使えない文字 (< > &)と同様に、 LaTeX でも特別扱いする文字がある。 次の文字は、LeTeX が特別扱いする。
#,$,%,&,_,{,},\,<,>,|,^,~
The Unix Super Text 50.9.4項 参照、
これらの特殊文字を LaTeX 処理系に解釈させる(LaTeX の命令とする) には、 半角 (ASCII) を使う。同じ形で画面に表示される全角文字(漢字)を使っても、 命令とは見なされなず、単に他の漢字と同じように表示される。
1: % 2: % struct.tex 3: % 4: \documentclass[a4j]{jarticle} 5: \usepackage{graphicx} 6: 7: \title{ \LaTeX 文書の構造} 8: \author{ 新城 靖 } 9: \date{\today} 10: \西暦 11: 12: \begin{document} 13: 14: \maketitle 15: 16: \begin{abstract} 17: この文書は、\LaTeX 文書の構造を示したものである。 18: \end{abstract} 19: 20: \section{はじめに} 21: 22: 章立てには、section, subsection, subsubsection を用いる。パラグラフとパ 23: ラグラフの区切りは、空行を開ける。(paragraph や subparagrap は、普通は 24: 使わない。) 25: 26: \ref{sec:list}章では、3種類の箇条書きについて説明している。 27: 28: \subsection{見出し} 29: 30: \subsection{見出し} 31: 32: \section{箇条書き} 33: \label{sec:list} 34: 35: itemizeの例を示す。 36: 37: \begin{itemize} 38: \item 日本料理 39: \item 中華料理 40: \item 韓国料理 41: \end{itemize} 42: 43: enumerateの例を示す。 44: 45: \begin{enumerate} 46: \item メールリーダを実行する 47: \item 新着メールを取り込む 48: \item 新しいメールを書く 49: \item 新しいメールを送る 50: \item メールリーダを終了する 51: \end{enumerate} 52: 53: descriptionの例を示す。 54: 55: \begin{description} 56: \item[mnews] ネットワーク・ニュースと電子メールを読み書きするプログラム。 57: \item[emacs] テキスト・エディタの1つ 58: \item[Firefox] WWWブラウザ 59: \item[irc] 文字による会議システム 60: \end{description} 61: 62: \subsection{図の挿入} 63: 64: 図\ref{fig:latex-struct}に、\LaTeX の文書の構造を示す。 65: \LaTeX の文書は、プリアンブルと本文から構成される。 66: プリアンブルには、表題、著者、概要を記述する。 67: 本文は、章、節、項などから構成され、最後に参考文献が付く。 68: 69: \begin{figure}[t] 70: \begin{center} 71: \includegraphics[width=80mm]{latex-struct.eps} 72: \end{center} 73: \caption{\LaTeX におけるデータの流れ} 74: \label{fig:latex-struct} 75: \end{figure} 76: 77: \subsection{見出し6} 78: 79: 数式を記述することもできる。 80: 81: $ \displaystyle \sum^{10}_{x=1} \frac{1}{x^{2}} $ 82: 83: \section*{見出し7} 84: 85: 番号がつかない見出しもある。 86: 87: \end{document}
その他に、\section より大きい単位として\part と \chapter, \subsection より小さい単位として \paragraph, \subparagraph が使われることがある。通 常のパラグラフは、空行で作り、\paragraph は使わない。
手引き 6.3.4-6.3.5 参照。
HTML | LaTeX |
---|---|
<TITLE> | \title |
<body> | \begin{document} |
<H1> | \section |
<H2> | \subsection |
<H3> | \subsubsection |
<P> | 空行 |
<A name=""> | \label |
<A href=""> | \ref |
<UL><LI> | \begin{itemize} \item |
<OL><LI> | \begin{enumerate} \item |
<DL> | \begin{description} |
<IMG> | \includegraphics |
<TABLE> | \begin{tabular} |
<ADDRESS> | \author |
PostScriptプリンタは一種のコンピュータで、PostScript 言語のプログラムを実行することができる。 実行結果として、印刷が行われる。 PostScript プリンタに対してテキストやワード・プロセッサの文書、ソース・プ ログラムをそのままプリンタに送っても、印刷されない。
PostScript プリンタに印刷するためには、プリンタにファイルを送る前になん らかの手段でPostScript のプログラムに変換する。 coins のプリンタに印刷する時には、PostScript 言語のプログラムを 作成して、プリンタに送っている。
The Unix Super Text 52.2.1 参照。
The Unix Super Text 17.1.2 参照。
図17-1 のプログラムは、括弧{}
が消えている。
復活したものを、ここ に置く。
%%BoundingBox: 0 0 512 322この例では、画像は、左下の座標(0,0)から右上の座標(512,322)の間にあるこ とを意味する。
$ cd ~/p![]()
$ cd ~/public_html/行頭では、コマンド名を補完してくれる。![]()
$ ls *.tex
$ ls *.dvi
$ ls struct.*
$ ls /ここまで打ったら、行末で![]()
^I
(Control+I))を1度押してみる。
$ ls /1度目は何も表示が変わらない。bash や端末の設定によっては、ベルが鳴る。 行末で![]()
$ ls /すると、ls と同じような表示がなされる。![]()
$ ls / .DS_Store Developer/ home/ .Spotlight-V100/ Library/ local3/ .SymAVx86QSFile Network/ mach_kernel .Trashes/ Pref-data/ net/ .file System/ opt/ .fseventsd/ Users/ private/ .hotfiles.btree Volumes/ sbin/ .metadata_never_index bin/ tmp/ .symSchedScanLockxz cores/ usr/ .vol/ dev/ var/ Applications/ etc/ $ ls /目的の「![]()
usr
」は、u
から始まるものは、1個しかないので 「u」
とうち、$ ls /uすると、![]()
sr/
が補完される。
$ ls /usr/「![]()
$ ls /usr/すると、/usr の内容が表示される。![]()
$ ls /usr/ X11/ bin/ lib/ local/ sbin/ standalone/ X11R6/ include/ libexec/ local3/ share/ $ ls /usr/「![]()
b
$ ls /usr/b次のように「![]()
in/
」が補完される。
$ ls /usr/bin/「![]()
/usr/bin/
」に対して、「$ ls /usr/bin/候補が多すぎるので、ここでは表示はしないでDisplay all 1093 possibilities? (y or n)
![]()
n
を打つ。
Display all 1093 possibilities? (y or n)n
em
と入れて $ ls /usr/bin/emすると、次のように「![]()
acs
」が補完される。
$ ls /usr/bin/emacsこれで目的のファイルを打ち込むことができた。![]()
mkdir
コマンドで
作成するディレクトリとしては、ASCIIの範囲のものを使うと扱いやすい。以下
の記述でディレクトリの名前 ディレクトリ名
には、各自自
分にとって分かりやすい適切な名前を考えて置き換えなさい。
「ディレクトリ名
」 と入れてはならない。
$ mkdir ディレクトリ名
$ cd ディレクトリ名
$ cp ~yas/public_html/coins/literacy-2012/2012-05-29/ex/struct.tex .
$ cp ~yas/public_html/coins/literacy-2012/2012-05-29/ex/latex-struct.eps .
$ ls
latex-struct.eps struct.tex
$ platex struct.tex
(メッセージ)
$ platex struct.tex
(メッセージ)
$ ls
latex-struct.eps struct.dvi struct.tex
struct.aux struct.log
$
platex コマンドを、2回実行する。
この結果、.dvi ファイル、.aux ファイルが作成されていることを確認しなさい。
上の例では、さらに .log ファイルも作成されている。
$ ls -l file.dvi
$ dvipdfmx file.dvi
$ ls -l file.pdf
この結果、file.dvi
とうファイルから
file.pdf
が生成させる。このことを確認しなさい。
この例は、file.dvi
という名前のファイルから
file.pdf
という名前のファイルを作成している。
他の名前のファイルを使う時には、適宜ファイル名を変えること。
file.pdf
という名前のファイルを表示している。
他のファイルを表示する時には、適宜ファイル名を変えること。
$ ls -l file.pdf
$ open file.pdf
これにより、標準の PDF を表示するアプリケーションが実行される。
(標準も含めて) 次の 2 つのアプリケーションで表示してみなさい。
一番上のメニューバーにある「ファイル」メニューから「プリント」を選ぶと、 印刷することができる。
file.dvi
という名前のファイルを表示している。
他のファイルを表示する時には、適宜ファイル名を変えること。
$ ls -l file.dvi
$ xdvi file.dvi
終了するには、Quit ボタンを押すか、q キーを押す。
EPS 形式で読み込んだ図について、PS View ボタンや v キーで表示、非表示を切り替えなさい。
次のキーの動作を確認しなさい。
キー | 働き |
---|---|
q | 終了 |
n | next ページへ移動 |
p | previous ページへ移動 |
j | 下へ移動 |
k | 上へ移動 |
h | 左へ移動 |
l | 右へ移動 |
数 g | 数 のページ移動 |
数 s | 数 で指定されたサイズ変更 |
xdvi を印刷の目的でも利用することができる。 ただし、印刷の品質は必ずしも良いとは言えない。 以下の dvips を使った時と印刷の品質を比較しなさい。
file.dvi
という名前のファイルから
file.ps
という名前のファイルを生成している。他のファイル
を表示する時には、適宜ファイル名を変えること。
$ ls -l file.dvi
$ dvips file.dvi
dvips コマンドについては、The Unix Super Text 50.7 参照。
なお、coins の dvips は、標準で(-o オプションをつけなくても)、.ps とい う拡張子を持ったファイルを生成する。標準出力に PostScript ファイルを出 力しない。従って、生成した PostScript ファイルを印刷するには、それを 以下で説明するlpr コマンド でプリンタ送る。
file.ps
という名前のファイルを表示している。
他のファイルを表示する時には、適宜ファイル名を変えること。
$ ls -l file.ps
$ gs file.ps
$ gv file.ps
以下の例は、file.ps
という名前のファイルを印刷している。
他のファイルを印刷する時には、適宜ファイル名を変えること。
$ ls -l file.ps
$ lpr file.ps
$ lpq
lpr, lpq コマンドの代わりに lp コマンド、lpstat を使ってみなさい。 The Unix Super Text 17.3 プリンタの使い方 参照。 手引き 2.9節、表2.8 参照。
dvipdfmx では、EPS 形式以外の画像、たとえば、PDF 形式の図を読み込むこともできる。
\includegraphics{file.pdf}この場合、描画領域(bounding box)を示すファイルを、拡張子 .bb で別途作成する。
$ ls file.*
file.bb file.pdf
$ cat file.bb
%%BoundingBox: 0 0 726 306
$
まず、LaTeX のファイルの先頭に近い部分にある、\usepackage
に、次
のように [dvipdfm]
というオプションを付ける。
\usepackage[dvipdfm]{graphicx}
この機能を確認しなさい。
拡張子 ".bb" を持つ描画領域を含むファイルは、テキストエディタで作成する
こともできるが、PDF ファイルから ebb コマンドで作成することもできる。
以下の例では、square.pdf
から square.bb
を作成している。
$ ls square.*
square.pdf
$ ebb square.pdf
$ ls square.*
square.bb square.pdf
$ cat square.bb
%%Title: ./square.pdf
%%Creator: extractbb 20120527
%%BoundingBox: 0 0 121 121
%%CreationDate: Sun May 27 21:11:07 2012
$
この機能を確認しなさい。
詳しくは、「ヘルプ」を見なさい。これは、一番上のメニューバーにある「ヘ ルプ」から「OmniGraffle ヘルプ」を選ぶことで表示される。
tgif を実行するには、コマンドラインから tgif と打つ。
tgif は、X Window System (X11) の機能を利用して動作する。 tgif を実行する前に X11 を実行(Dock の X11 をシングルクリック)しなさい。 そこで開かれた端末で tgif を実行しなさい。
tgif で作成した図を、EPS 形式で出力し、TeX で利用しなさい。
The Unix Super Text 下巻 第53章 ドローツール 参照。
http://takeno.iee.niit.ac.jp/~foo/tgif-jman/tgif-jman.html
参照。
file.png
とうファイルから
file.eps
が生成させる。
他の名前のファイルを使う時には、適宜ファイル名を変えること。
$ ls -l file.png
$ convert file.png file.eps
$ ls -l file.eps
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
$ a2ps --help
$ a2ps -o file.ps file.txt
詳しくは、man a2ps を見なさい。
注意: a2ps コマンドは、日本語を扱うことはできない。日本語は、a2ps-j を 使いなさい。PostScript ファイルを作る時には、必ず -o オプションを使うこ と。-o オプションを付けないと、そのままプリンタに送られてしまう。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
$ a2ps-j -help
$ a2ps-j file.txt > file.ps
注意: -o オプションは使えない。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
生成した PostScript ファイルを lv コマンドで表示したり、gs コマンドや gv コマンドで画面に表示しなさい。
以下の問題の回答(または確認番号)をテキスト・ファイルに記述し、 レポート提出ページから提出しなさい。
(1) 課題8(1)で作成し たWWW ページと類似の TeX 文書を作成し、dvi ファイルを作成しなさい。その dvi ファイルから、PDF ファイルを作成しなさい。その PDF ファイル、または、 dvips により作成したPostScript ファイルを印刷しなさい。ただし、以下の点 については、同じでなくてもよい。
(2) 筑波大学全学計算機システム の 「 情報処理実習用手引き 」 筑波大学全学計算機システムの「情報処理実習用手引き」を読みなさい。 そして次の点について、次の項目について簡単に説明しなさい。
(3) [加点] 同じ内容の文書を、次に示す1つ以上のスタイルを用いて整形し、 PDF ファイルを作成しなさい。
PDF ファイルを TAに見せ、確認番号を受け取りなさい。レポートには、確認番 号、利用したスタイル・ファイルの種別、および、細かな修正を行った場合に は、修正点を記入しなさい。(4) [加点] 次の LaTeX の機能を全て利用してし、PDF ファイルを作成しなさい。