XeTeX

XǝTeX
作者 ジョナサン・キュー
初版 2004年4月7日 (20年前) (2004-04-07)[1]
最新版
0.99998 / 2017年3月16日 (7年前) (2017-03-16)[2]
リポジトリ ウィキデータを編集
プログラミング
言語
Pascal (WEB), C言語, C++
対応OS クロスプラットフォーム
サポート状況 開発中
種別 組版処理
ライセンス MIT License
公式サイト xetex.sourceforge.net
テンプレートを表示

XǝTeXXeTeX, ズィーテック、ズィーテフ)は、組版処理ソフトウェアとして知られるTeXを拡張・改良し、最新のフォント技術等に対応させたソフトウェア。TeXの代替エンジン。

Unicodeをベースとし、OpenTypeGraphiteApple Advanced Typography (AAT) などの最新のフォント表示技術に対応しているのが特徴。これにより、OSにインストールされているフォントをそのまま利用できるメリットも生まれた。元はジョナサン・キュー(Jonathan Kew)により開発され、MIT Licenseにより配布されているフリーソフトウェア[3]

2004年〜2005年にMac OS X専用ソフトとして発表されたが[4]、2006年にLinuxMicrosoft Windowsにも対応した。2007年にはメジャーなTeXディストリビューションであるTeX Liveに収録され、ほぼ全ての環境で利用できるようになった[5]

表記と発音

[編集]

双方向テキスト (bi-directional text)[注 1] に対応していることを意識し、左右対称な名称となっている[4]。1文字目の"X"はMac OS Xの"X"。2文字目は、前身となったシステムε-TeXに由来し、反転させたラテン文字の"E"[注 2]を用いることが推奨されている[4]

読み方については、zee-TeX と書いてあるがごとく読むこととされており[4][6]、カタカナでは「ズィーテック」「ズィーテフ」などと近似される。TeXの発音についての詳細は「TeX」を参照のこと。

開発経緯

[編集]

2004年4月、Mac OS X専用ソフトウェアとして発表。2005年にOpenType機能が追加された。BachoTeX 2006会議にてLinux版が発表され、数ヶ月後、角藤亮によりWindowsに移植された。

Mac専用ディストリビューションであるMacTeXは2006年にXǝTeXを収録し、各メジャープラットフォーム用のXǝTeXはTeX Live 2007に収録された。MiKTeXにはバージョン2.7から収録されている。

BachoTeX 2008で発表されたXǝTeX 0.998ではUnicode正規化に対応した(\XeTeXinputnormalizationコマンド)。

特徴

[編集]
XǝTeXによる合字表示のデモンストレーション。Hoefler Text(OpenTypeフォント)使用。

フォント

[編集]

TeX組版時にはTeXフォントメトリック.tfm)と呼ばれるファイルにより各字形の位置を定め、出力ドライバはそれに従い実際の字形データを探して表示するという手法を取っているが、これはTrueTypeOpenTypeなどが一般的な1990年代以降のコンピュータのフォントのあり方とは大きく異なる。XǝTeXは、特に.tfmなどを用意せずとも、OSにインストールされた各フォントも利用できる[4][注 3]

一方、従来からの.tfm系フォントも引き続き利用可能であり、TeXとの互換性を保っている[4]

文字コード

[編集]

元来TeXは英語を想定して作られており、文字コードはASCIIを原則としていた。他の言語の入力のためにはpTeXのような改造版や、専用のパッケージの導入が必要であったが、こういった回避方法や各パッケージ特有の書き方などは複雑化する傾向にあった[4]。XǝTeXはUnicodeを全面的にサポートし、デフォルトの入力文字コードUTF-8である。これにより世界各地で日常的に使われる用字系のほとんどを網羅した。これに伴い、従来のTeXでは8ビットで文字を処理していたことに代わり、UTF-16を内部的に使用するように改められた。

タイポグラフィ

[編集]

異体字や合字などの字体切り替え、ウェイト(書体の太さ)の細かな指定、OpenTypeのロケール指定(locl)、などの先進的な機能に対応しているほか、OpenTypeのタグをそのままフォントに受け渡す機能も備える。フォントメトリクスに基づいた伝統的なTeXの数式組版処理に代わって、数式処理に特化したCambria MathやAsana MathなどのUnicodeフォントを用いた数式組みにも対応している。

図・画像

[編集]

従来のTeXは画像や図に特化した処理は特に行わず、マクロパッケージに受け渡すのみであったが、XǝTeXは画像に関する機能を内蔵している。

動作

[編集]

XǝTeXによる組版処理は2段階に分けて行われる。第1段階では拡張DVIxdv)形式で中間出力が行われ、これが第2段階でドライバによりPDFに変換される。通常xdv形式の中間出力はそのままPDF変換ドライバに渡され、利用者が中間出力を目にすることはない。第1段階のみを実行しxdv形式でファイルに保存することも可能だが、2012年12月現在、この中間形式を開くことのできるビューアは存在しない[7]

xdv形式をPDFに変換するドライバは2種類存在する。

xdv2pdf
Apple Type Services for Unicode Imaging (ATSUI) と QuickTime により動作するため、macOS専用。
xdvipdfmx
dvipdfmの改変版。FreeTypeを利用しており、クロスプラットフォーム

バージョン0.997からxdvipdfmxがデフォルトとなり、バージョン0.9999からはxdv2pdfはサポート対象外となり、開発は中止された[8]

XǝTeXはLaTeX・ConTeXtいずれのマクロパッケージとも極めて相性よく動作する。XǝTeX版のLaTeXはxelatexという名称で呼び出される。fontspecパッケージと合わせて利用されることが多く、これによりフォントの選択・切り替えが容易になる[9]

XǝTeXはTeX Live, MacTeX, MiKTeXに同梱されて提供されている。

使用例

[編集]

以下にXǝLaTeXへの入力と組版結果を示す。用いたフォントはLinux LibertineSIL Open Font License)。

\documentclass[11pt]{article} \usepackage{fontspec} \setmainfont[Ligatures=TeX]{Linux Libertine O} \begin{document} \section{Unicode support}  \subsection{English} All human beings are born free and equal in dignity and rights.   \subsection{Íslenska} Hver maður er borinn frjáls og jafn öðrum að virðingu og réttindum.   \subsection{Русский}   Все люди рождаются свободными и равными в своем достоинстве и  правах.   \subsection{Tiếng Việt} Tất cả mọi người sinh ra đều được tự do và bình đẳng về nhân phẩm và  quyền lợi.   \subsection{Ελληνικά}  Ὅλοι οἱ ἄνθρωποι γεννιοῦνται ἐλεύθεροι καὶ ἴσοι στὴν ἀξιοπρέπεια  καὶ τὰ δικαιώματα.  \section{Legacy syntax} When he goes---``Hello World!''\\ She replies—“Hello dear!”   \section{Ligatures} \fontspec[Ligatures={Common, Historical}]{Linux Libertine O Italic} Questo è strano assai!   \section{Numerals} \fontspec[Numbers={OldStyle}]{Linux Libertine O}Old style: 1234567\\ \fontspec[Numbers={Lining}]{Linux Libertine O}Lining: 1234567   \end{document} 
出力結果
出力結果

脚注

[編集]
  1. ^ アラビア語やヘブライ語などにおける、右から左へ読む横書きのサポート。縦書きと横書き#右横書きのサポートも参照
  2. ^ U+018E LATIN CAPITAL LETTER REVERSED E
  3. ^ 厳密には、OSが認識しているものというより、Fontconfigが認識しているフォント[3]

出典

[編集]
  1. ^ Jonathan Kew (2004-05-19), XeTeX version history, SIL International, http://scripts.sil.org/cms/scripts/page.php?item_id=xetex_history 
  2. ^ XeTeX - Unicode-based TeX / Code”. SourceForge.net. 2017年5月5日閲覧。
  3. ^ a b 奥村晴彦「XeTeX」『TeX Wiki』2016年7月5日https://texwiki.texjp.org/?XeTeX 
  4. ^ a b c d e f g Jonathan Kew (2005), “XǝTeX, the Multilingual Lion: TeX meets Unicode and smart font technologies”, TUGboat (Proceedings of the 2005 Annual Meeting) 26 (2): 115-124 
  5. ^ Jonathan Kew (2007), “XǝTeX Live”, TUGboat (XVII European TeX Conference) 29 (1): 146-150, http://www.tug.org/TUGboat/Articles/tb29-1/tb91kew.pdf 
  6. ^ Dave Walden (2007-04-03), “Jonathan Kew”, TeX Users Group, http://tug.org/interviews/interview-files/jonathan-kew.html 
  7. ^ “How to view .xdv files?”, TeX - LaTeX Stack Exchange, (2012-12-01), http://tex.stackexchange.com/questions/85094/how-to-view-xdv-files 
  8. ^ Khaled Hosny (2013-03-12), “Future of xdv2pdf driver on Mac”, XeTeX mailing list, http://tug.org/pipermail/xetex/2013-March/024120.html 
  9. ^ Will Robertson (2008-08-09) (PDF), The fontspec package, http://www.ctan.org/tex-archive/macros/xetex/latex/fontspec/fontspec.pdf 2009年1月8日閲覧。 

参考文献

[編集]

外部リンク

[編集]