XǝTeX
原作者 | Jonathan Kew |
---|---|
開發者 | Khaled Hosny |
當前版本 | 0.999992(2020年1月20日 | )
源代碼庫 | |
操作系統 | 跨平台 |
類型 | 排版 |
許可協議 | MIT許可證 |
網站 | xetex.sourceforge.net |
XeTeX(/ˈziːtɛx/或/ˈziːtɛk/[1],風格化後寫作XǝTeX)是一種使用Unicode的TeX排版引擎,並支持一些現代字體技術,例如OpenType、Graphite和Apple Advanced Typography(AAT)。其作者和維護者是Jonathan Kew,並以X11自由軟件許可證發布[2]。
雖然XǝTeX最初只是為Mac OS X所開發,但它現在在各主要平台上都可以運作。它原生支持Unicode,並默認其輸入文件為UTF-8編碼。XǝTeX可以在不進行額外配置的情況下直接使用操作系統中安裝的字體,因此可以直接利用OpenType、Graphite中的高級特性,例如額外的字形,花體,合字,可變的文本粗細等等。XǝTeX提供了對OpenType中本地排版約定(locl
標籤)的支持,也允許向字體傳遞OpenType的元標籤。它亦支持使用包含特殊數學字符的Unicode字體排版數學公式,例如使用Cambria Math或Asana Math字體代替傳統的TeX字體。
歷史
[編輯]2004年4月,發布了XǝTeX的第一個版本,這個版本只支持Mac OS X,並包括了內建的ATT和Unicode支持。2005年,加入了對OpenType的支持。在2006年BachoTeX期間,發布了第一個支持Linux的版本,並在數月後由Akira Kakuto移植到了Microsoft Windows上,其跨平台版本最終包含在TeX Live 2007中。另外,從2.7版開始,MiKTeX也包含了XǝTeX。
作為TeX Live的一部分,XǝTeX支持大多數為LaTeX、OpenType、TrueType和PostScript字體開發的巨集包,而無需特別的安裝和設定。
BachoTeX 2008上宣布發行0.998版本,通過\XeTeXinputnormalization
命令支持Unicode正規化。
2013年5月發布0.9999,為了OpenType排版從ICU排版引擎轉換到HarfBuzz,為Graphite排版輸出增添Graphite2,並在Mac OS X以Core Text取代ATSUI。
工作過程
[編輯]XǝTeX分兩個階段處理輸入文件。在第一階段中,XǝTeX輸出擴展DVI (xdv
)文件,然後由驅動轉換為PDF文件。在默認模式下,xdv
文件被直接通過管道送入驅動,不產生任何用戶可見的中間文件。同時,也可以只運行XǝTeX的第一階段,保存xdv
文件,但在截至2008年7月[update]尚無可以閱讀這種格式的閱讀器。
有兩種後端驅動可以從xdv
文件產生PDF文件:
xdv2pdf
:它使用AAT技術(Apple Advanced Typography),只能在Mac OS X上工作。xdvipdfmx
:它是dvipdfmx
的修改版。它在標準的FreeType和fontconfig上採用了修改版本的Unicode國際化組件(ICU),可以在所有平台上工作。
從0.997版開始,所有平台上的默認驅動都是xdvipdfmx
。在0.9999版中xdv2pdf不再得到支持,其開發也被中止。[3]
XǝTeX可以很好的支持LaTeX和ConTeXt巨集包。其中,LaTeX部分以xelatex
的方式引用。並通常與fontspec
一起使用,該巨集包提供字體的配置方式,並允許重新命名複雜的字體名稱以便於再利用[4]。
XǝTeX包含在TeX Live、MacTeX和MiKTeX發行包中。
示例
[編輯]下面的例子包括了XǝTeX源代碼和渲染結果。例子中使用了開源字體文泉驛微米黑(WenQuanYi Micro Hei)顯示Unicode字符,使用了以SIL開源字體授權發布的Linux Libertine O字體顯示OpenType字體的連字及舊式數字樣式。以XeLaTeX命令處理。
%!Tex Program = xelatex
\documentclass[a4paper]{article}
\usepackage{xltxtra}
\setmainfont[Mapping=tex-text]{WenQuanYi Micro Hei}
\begin{document}\pagestyle{empty}
\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{简体中文}
每个人生来平等,享有相同的地位和权利。
\subsection{繁體中文}
每個人生來平等,享有相同的地位和權利。
\subsection{日本語}
すべての人間は自由であり、かつ、尊厳と権利とについて平等である。
\section{Legacy syntax}
When he goes---``Hello World!''\\
She replies—“Hello dear!”
\section{Ligatures}
\fontspec[Ligatures={Common, Historical}]{Linux Libertine O Italic}
\fontsize{12pt}{18pt}\selectfont Questo è strano assai!
\section{Numerals}
\fontspec[Numbers={OldStyle}]{Linux Libertine O}Old style: 1234567\\
\fontspec[Numbers={Lining}]{Linux Libertine O}Lining: 1234567
\end{document}
|
阿拉伯文字支持
[編輯]在XǝTeX中使用阿拉伯文字的一個解決方案是使用arabxetex軟件包。為此,你需要在下列文本中插入阿拉伯文字:
\begin{arab}[utf]
.
.
.
\end{arab}
用下列代碼舉例說明:
\documentclass[12pt,fleqn,titlepage,twoside,a4paper]{book}
\usepackage{etex}
\usepackage{amsfonts,amsmath,amssymb,graphicx}
\usepackage{txfonts}
\usepackage[centering,includeheadfoot,margin=1in]{geometry}
\usepackage{tabvar}
\usepackage{arabxetex}
%\newfontfamily{\arabicfont}[Script=Arabic,Scale=1.5]{Traditional Arabic}
\parindent = 0pt
\begin{document}
\begin{arab}[utf]
\chapter*{\textarab[utf]{ حِكَم من تَجمـيعي }}
\section*{\textarab[utf]{ شِعر }}
أديـن بدين الحـــب أنـى تــوجـهت ركـائبه \qquad فالحـــب دينــي و إيماني\\
لنا أسوة في بشر هند و اختها و قيس و ليلى \qquad ثـــــم مـــــي و غـــيــــلان
\end{arab}
\end{document}
|
參見
[編輯]參考文獻
[編輯]- ^ Kew, Jonathan. TUG. 訪談 with Dave Walden https://web.archive.org/web/20201028203628/http://www.tug.org/interviews/interview-files/jonathan-kew.html. 2007-04-03 [2012-10-25]. (原始內容存檔於2020-10-28) (英語). 缺少或
|title=
為空 (幫助) - ^ XeTeX downloads. SIL International. [2012-10-25]. (原始內容存檔於2021-10-20) (英語).
- ^ Hosny, Khaled. Future of xdv2pdf driver on Mac. March 12, 2013 [2013-06-07]. (原始內容存檔於2021-01-18).
- ^ Robertson, Will. The fontspec package (PDF). 2008-08-09 [2009-01-08]. (原始內容存檔 (PDF)於2009-02-05) (英語).
延伸閱讀
[編輯]- M. Goossens (Ed.) (2008) The XeTeX Companion: TeX meets OpenType and Unicode (頁面存檔備份,存於網際網路檔案館).