我想讓 Alchemy 符號在 PdfLaTeX 中工作。我無法訪問 XeTeX 或 LuaTex,因為我在 iPad 上使用 Tex Writer。這是兩個最小的例子。
第一個有效。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8x]{inputenc}
\begin{document}
\unichar{"00E4}
\unichar{"20AC}
\end{document}
這個不能編譯:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage[utf8x]{inputenc}
\begin{document}
\unichar{"00E4}
\unichar{"1F701}
\end{document}
這是錯誤訊息:
l.9 \unichar{"1F701}
?
! Emergency stop.
...
l.9 \unichar{"1F701}
Unicode character 128769 = U+1F701:
ALCHEMICAL SYMBOL FOR AIR
Character is not defined in uni-*.def files.
Enter I! to define the glyph.
Here is how much of TeX's memory you used:
1717 strings out of 493024
24829 string characters out of 6124273
70825 words of memory out of 5000000
5308 multiletter control sequences out of 15000+600000
4403 words of font info for 15 fonts, out of 8000000 for 9000
1141 hyphenation exceptions out of 8191
23i,0n,17p,304b,478s stack positions out of 5000i,500n,10000p,200000b,80000s
! ==> Fatal error occurred, no output PDF file produced!
答案1
TeX 是一個排字機:它的工作是從字體中提取字形(形狀),並決定將它們放置在頁面上的位置。因此 TeX 需要獲得有關這些形狀的資訊。
為了解釋您的輸入,預設情況下 TeX 會單獨處理每個位元組。您\usepackage[utf8x]{inputenc}
可以讓 TeX 知道它應該將位元組序列解釋為 Unicode 字符,如 UTF-8 編碼所指定的那樣。例如,當您輸入€
在文件中鍵入時,它會理解您的意思Unicode 字元 U+20AC(歐元符號),因為檔案將包含與該字元的 UTF-8 編碼相對應的位元組。這相當於手動輸入\unichar{"20AC}
。
但是僅僅了解您想要使用特定的 Unicode 字元還不夠:那又怎樣呢? TeX 仍然需要知道如何處理它。
例如:
ä
U+00E4 帶分音符的拉丁小寫字母 A定義為texmf-dist/tex/latex/ucs/data/uni-0.def
(\"a
TeX 知道如何做)€
U+20AC 歐元標誌定義為texmf-dist/tex/latex/ucs/data/uni-32.def
as\ifx\euro\undefined\texteuro\else\euro\fi
,而它又是透過 TeX 中可用的字形以某種方式製成的
你想要的角色,U+1F701 空氣的煉金術符號