我的 iPad 上有一系列笔记,是使用 Markdown 编辑器/查看器 (trunk notes) 编写的,它不支持乳胶,但可以显示希腊文。有没有一种简单的方法可以将希腊字母(例如,将 UTF-8 符号 0xCEB1、α 转换为其乳胶等价物 ( \alpha
)?我使用 pandoc 进行转换,即在转换为 TeX 或 ConTeXt 之前将 LaTeX 标头粘贴到输出上。
答案1
在 ConTeXt(采用 utf-8 编码的 MkIV 和 MkII)中,希腊字母在文本和数学模式下可直接使用。(您需要带有希腊字母的文本字体)
\starttext
α $α$
\stoptext
在 MkIV 中,Unicode 字符的行为与 ASCII 字符类似,因此$\hat α$
与 相同$\hat {α}$
。在 MkII 中,您需要使用后一种形式。
答案2
我使用以下代码使 unicode 符号既可以作为普通文本使用,也可以在数学模式下使用。但随后xelatex
需要对其进行编译:
\usepackage{fontspec}
\setmainfont[Ligatures=TeX]{STIXGeneral}
\def\textalpha{α} \catcode`\α=\active \defα{\relax\ifmmode \alpha \else \textalpha \fi}
您还需要一些合适的字体,STIX 对我来说就够了。
如果您真的想替换源代码中的 unicode 字符,那就是另一个问题了。我不知道您的环境中有哪些可用的工具。我会编制一个替换列表α \alpha
,然后编写一个小脚本按顺序执行这些替换。例如,Linux 上有replace
一个实用程序可以执行这样的替换。
答案3
扩展 Canaaerus 答案 在 xelatex 中,包unicode-math
允许您在数学模式下使用希腊字符。检查以下最小示例。
\documentclass{article}
% font selection for normal text
\usepackage{fontspec}
% Packages needed for mathematics
\usepackage{amsmath}
\usepackage{unicode-math}
% Fonts
\setmainfont[Mapping=tex-text]{Linux Libertine O}
\setmathfont{XITS Math}
\begin{document}
\begin{equation}
a = α + b + β^2_i
\end{equation}
\end{document}
欲了解更多信息(希腊语),请查看这里
字体
您可以使用的字体如下(它们必须安装在您的操作系统的标准字体文件夹中)
- Asana-Math. 由 Apostolos Syropoulos 创建的免费字体。
- 斯蒂克斯
- 西茨,Stix 的分支
- 新欧拉
- 拉丁现代数学,经典 TeX 字体的 OpenType 版本。
- Cambria Math。专有字体,与 Microsoft 软件(例如 MS Office)一起分发
编辑
但请注意,a
和\alpha
是不同的符号!如果您想转换α
为a
,则不能使用以前的方法。如果这就是您的需要,那么编写一个脚本(例如,使用 perl 或 python)来解析您的笔记并进行替换应该不会太难。