使用 TikZ 沿圆形路径生成马拉雅拉姆语文本

使用 TikZ 沿圆形路径生成马拉雅拉姆语文本

我想沿圆弧路径放置一些玛雅拉姆语(或梵语、泰米尔语)文本。以下代码在马拉雅拉姆语(或任何其他语言)中不起作用并且会停滞;但是,如果文本是英语,它就可以完美运行。

\documentclass{article}
\usepackage{xltxtra}
\usepackage{fontspec}
\newfontfamily{\mala}[Script=Malayalam]{Rachana}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\begin{document}
\begin{tikzpicture}
\draw[-latex,blue,postaction={decorate},decoration={text along path,
text={\mala മലയാളം  മലയാളാം മലയാളം },text align=center}]
(4,0) arc [start angle=-60,end angle=80,radius=4];
\end{tikzpicture}
\end{document}

为了进行比较,输出的文本看起来应该是这样的,尽管显然是沿着圆形路径绘制的:

在此处输入图片描述

unicode组合字符的虚线圆圈肯定是错误的。

答案1

字体命令\mala扰乱了路径文本,因此我只是将其移到更安全的地方:

在此处输入图片描述

我将字体更改为已安装的字体,并删除了该xltxtra包,因为它现在并不推荐。

\documentclass{article}

\usepackage{fontspec}
\newfontfamily{\mala}[Script=Malayalam]{Kartika}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\begin{document}
\begin{tikzpicture}
\mala
\draw[-latex,blue,postaction={decorate},decoration={text along path,
text={മലയാളം  മലയാളാം മലയാളം },text align=center}]
(4,0) arc [start angle=-60,end angle=80,radius=4];
\end{tikzpicture}
\end{document}

或者再次使用额外的括号组来将组合继续组合在一起。最后一个单词看起来特别棘手,任何地方我试图将它拆分都留下了未知的组合和一个虚线圆圈,但最后一段对于路径来说相当“直”。可能有人能读懂这门语言,就能做出更好的拆分。

在此处输入图片描述

\documentclass{article}

\usepackage{fontspec}
\newfontfamily{\mala}[Script=Malayalam]{Kartika}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\begin{document}

{\mala മലയാളം  മലയാളാം മലയാളം}


\begin{tikzpicture}
\mala
\draw[-latex,blue,postaction={decorate},decoration={text along path,
text={{മ}{ല}{യാ}{ളം}  {മ}{ല}{യാ}{ളാം} {മലയാളം} },text align=center}]
(4,0) arc [start angle=-60,end angle=80,radius=4];
\end{tikzpicture}

\end{document}

相关内容