让 ucharclasses 转换正确适应 Unicode 符号

让 ucharclasses 转换正确适应 Unicode 符号

我正在尝试提出一个通用的样板,让我可以在纯文本文档中使用任意数量的奇怪 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 分钟以下才能完成(我离开了,去做了其他事情)。编译正常(使用一种字体):

unicode120

粘贴接下来的 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ﭒ︙︻︴ﺃ#

相关内容