将希腊文utf字母转换为乳胶符号

将希腊文utf字母转换为乳胶符号

我的 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}

欲了解更多信息(希腊语),请查看这里

字体

您可以使用的字体如下(它们必须安装在您的操作系统的标准字体文件夹中)

编辑

但请注意,a\alpha是不同的符号!如果您想转换αa,则不能使用以前的方法。如果这就是您的需要,那么编写一个脚本(例如,使用 perl 或 python)来解析您的笔记并进行替换应该不会太难。

相关内容