summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/zxjatype/example/example.tex
blob: 3101ad53a5ee4b13f43fd0f7aad1d54194ff2f1a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
\documentclass[a4paper]{bxjsarticle}
\usepackage[oldxetex]{zxjatype}
\setjamainfont{IPA明朝}
\setjasansfont{IPAゴシック}
\setjamonofont{IPAゴシック}
\usepackage{xltxtra}
% 欧文は既定の LM フォント
\begin{document}
\title{{\XeLaTeX}で日本語する件について}
\author{ZR}
\date{2010年\ 某月\ 某日}
\maketitle

\section{{\XeTeX}\>の紹介}

\subsection{{\XeTeX}\>とは}

{\XeTeX}\>はJonathan Kew氏による\>{\TeX}\>の拡張で符号空間を
Unicode全体(BMP以外も含む)に拡大したものである。
既存の\>{\TeX}\>のUnicode拡張としてはOmega(Ω)
があるが、{\XeTeX}\>はこれとは別の拡張となっている。%
(なお、Omegaの後継にあたるUnicode拡張\>{\TeX}\>が\>%
{Lua\TeX}\>である。)

{\XeTeX}\>のもう一つの大きな特徴は、現在の標準的なフォント技術を
内部に取り込んでいることである。
元々の\>{\TeX}\>が「特定の技術基盤に依存しない」という思想で設計されている
ことはよく知られているが、これはフォント関係の技術についても当てはまり、
フォントの扱いは\>{\TeX}\>本体(すなわち\>{\TeX}\>ソースをDVI%
ファイルに変換する)ではなくDVIウェア(DVIファイルを扱う
ソフトウェア)が行う。
このため、{\TeX}\>の機能自体は30年前からほとんど変わっていないにも
関わらず、dvipdfmxと組み合わせてOpenTypeフォントを埋め込んだ%
PDF文書を作成するということが可能になっている。
しかしその代償として、例えば新しいフォントを使えるようにするために一定の作業が
必要になるなどの短所を持ち合わせている。
{\XeTeX}\>はこの点に関して「非依存性」を捨てて、システムで使用可能な
フォントを直接扱うことで、何も設定しなくても好きなフォントを使うことが可能に
なっている。
また、従来の\>{\TeX}\>では難しい、フォントのもつ情報を利用した高度なリガチャ・
アクセント付加・位置異形の処理も自由に使うことが可能になっている。

\subsection{{\XeTeX}\>の出力例}

{\XeTeX}\>のもつ能力の一端を示す例をあげる。
これは\>{\XeLaTeX}({\XeTeX}\>上で動く\>{\LaTeX})の文書である。

\jafamilyinverbatim % verbatim を和文フォントで出力
\begin{quote}\small\begin{verbatim}
% このファイルの文字コードは UTF-8
\documentclass[a4paper]{article}
\usepackage{xltxtra} % これは後で解説
\newfontfamily\fchr{Charis SIL}  % \fchr でフォント“Charis SIL”に切替
\newfontfamily\fipm{IPA明朝}     % \fipm でフォント“IPA明朝”に切替
  % \faru でデーヴァナーガリー文字用の設定を施した“Arial Unicode MS”に切替
\newfontfamily\faru[Script=Devanagari]{Arial Unicode MS}
  % \showUC は何の変哲のない LaTeX のマクロ
\newcommand*\showUC[1]{\ \texttt{\footnotesize U+#1}}
\begin{document}
\begin{itemize}
\item {\fipm 土\symbol{"571F}}\showUC{571F} /
      {\fipm 圡\symbol{"5721}}\showUC{5721} /
      {\fipm 𡈽\symbol{"2123D}}\showUC{2123D}
\item {\fchr j}\showUC{006A} + {\fchr\symbol{"0302}}\showUC{0302}
      = {\fchr j\symbol{"0302}}
\item {\fipm か}\showUC{304B} + {\fipm\symbol{"309A}}\showUC{309A}
      = {\fipm か\symbol{"309A}}
\item {\faru \symbol{"915}}\showUC{0915} + {\faru\symbol{"93F}}\showUC{093F}
      = {\faru \symbol{"915}\symbol{"93F}}
\end{itemize}

\end{document}
\end{verbatim}\end{quote}

上の文書をxelatexコマンドで組版すると以下の出力を含む%
PDF文書が得られる。

\begin{center}
\frame{\includegraphics{xetexsamp01.pdf}}
\end{center}

\nojafamilyinverbatim % verbatim を欧文フォントで出力

上の文書において、\verb|\symbol{"xx}|\>は符号位置がxx(16進)である
文字を出力する\>{\LaTeX}\>コマンドである。
{\XeLaTeX}\>ではこれがUnicode符号空間で使えることが出力の
1行目から判る。%
(従来の\>{\LaTeX}\>では8ビットの値のみ。)
勿論、UTF-8で直接書いた文字も出力されている。
2行目以下ではUnicode結合文字を用いた文字合成の例を示している。%
\verb|j\symbol{"0302}|\>はjの直後にU+0302の文字
(結合曲アクセント)を書いたのと同じで、これはUnicodeの規則で
「ĵ(曲アクセント付j)」を表す。
2行目を見ると正しく合成が行われていることが判る。

\end{document}