我正在尝试提出一个通用的样板,让我可以在纯文本文档中使用任意数量的奇怪 Unicode 符号,并在导出为 PDF 时优雅地处理这些符号上的字体回退(使用 Pandoc 和 XeLaTeX)。以下是示例文档:
Some arrows such as ←, ⇔, ↗. Is the main font back on?
Some symbols such as
答案1
好的,所以耸耸肩和捂脸似乎已经添加到Unicode 9的补充符号和象形文字块。ucharclasses 的最新版本支持这个块;我选择像这样修补我的本地安装:
@@ -212,6 +212,8 @@
\do{TransportAndMapSymbols}{128640}{128767}
\do{AlchemicalSymbols}{128768}{128895}
\do{CJKUnifiedIdeographsExtensionD}{177984}{178207}
+ \do{SupplementalSymbolsAndPictographs}{129280}{129535}
}
% ----------------------------------------------------------------------------
% Option handling lets the user turn off "load all" and selectively enable only those blocks
@@ -396,6 +398,7 @@
\do{Emoticons}
\do{TransportAndMapSymbols}
\do{AlchemicalSymbols}
+ \do{SupplementalSymbolsAndPictographs}
}
\def\YiClasses{
我还必须调整我的头文件;这是最终版本:
\usepackage[Latin,Mathematics,NumberForms,Punctuation,Symbols]{ucharclasses}
\newfontfamily{\mydefaultfont}{Symbola}
\newfontfamily{\mymainfont}{DejaVu Sans}
\setTransitionsForSymbols{\mydefaultfont}{\mymainfont}
\setTransitionsFor{NumberForms}{\mydefaultfont}{\mymainfont}
\setTransitionsForMathematics{\mydefaultfont}{\mymainfont}
\setTransitionTo{Punctuation}{\mymainfont}
\setTransitionTo{Latin}{\mymainfont}
答案2
评论太小,因此作为答案发布,并且根本不涉及 ucharclasses,只是 unicode。
===
Unicode 非常庞大。
as many weird Unicode symbols as I like
——“许多”的数量级可能受到系统约束的限制。
使用一个空的编辑窗口,粘贴一串字符(前 120 个 unicode 块中的每个字符),需要 5 分钟以上,10 分钟以下才能完成(我离开了,去做了其他事情)。编译正常(使用一种字体):
粘贴接下来的 110 导致编辑器崩溃(Windows 上 Miktek 中的 Texworks)。
同样,3 分钟后打开 tex 文件。我预计它在某种程度上与缓冲区有关。
在另一个方面,每个会话可定义的字体系列似乎有一个阈值限制,即大约 60 个,超过此阈值,Xelatex 就会失败。
但所有操作问题都是可以解决的。
平均能量损失
\documentclass[12pt]{article}
\usepackage[no-math]{fontspec}
\setmainfont{Code2003}
\begin{document}
abc All of this is one font -- Code2003: The first ~120 unicode blocks (with some scattered spaces to activate line-wrapping):
\Large
!¡Āƀɐʰ́ ͰБԀԱאعݐބߒࠅࡁࢢऄঅਅઅଅஅ అಕഅඅกກ༂က ႠᄁሁᎀᎠ ᐂᚄᚠᜀᜠᝀᝠក᠀ᢰᤀᥐᦀ ᧠ᨀ ᨢ᪰ᬒᮃᯂᰂ᱒ᲀ᳀᳑ᴁᶀ᷁ḁἁ\-•⁵₤⃔ℂ ⅒→∂⌂␂⑂①━▂▢☀✅⟁⟱ ⠗⤃⦃⨂⬂ⰂⱢ Ⲁⴂⴳⶁⷡ ⸙⺒⼒⿲〖あアㄅㄳ㆕ㆣ ㇃ㇲ ㈃㌂㐂䷂万ꀂ꒓ꔂꙂꚣ꜃Ꜳꠃꡂꢃꢑ
% ꣴ꤁ꤰꥠꦅꧡꨁꩤꪃꫢꬁꬱꭱꯀ가ힰ更ffiﭒ︙︻︴ﺃ#