![Tengwar、tikz 和 decorations.text](https://linux22.com/image/403076/Tengwar%E3%80%81tikz%20%E5%92%8C%20decorations.text.png)
我正在尝试用 tengwar 沿着圆圈写一个句子,我正在尝试使用 tikz,代码看起来像
\documentclass[11pt]{article}
\pdfmapfile{=tengwarscript.map}
\usepackage[all]{tengwarscript}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\begin{document}
\begin{tikzpicture}
\draw[-latex,blue,postaction={decorate},decoration={text along path,
text={\tengwarannataritalic[1]
\tengwa{254}
\Textendedcalma\TTthreedots\Tnuumen\Tessenuquerna
\TTthreedots\Tungwe\Tando\Toore\TTrightcurl
\Tumbar\Ttinco\TTthreedots\Tlambealt\TTrightcurl\Tquesse\TTdoublerightcurl
\Tromanperiod\Ts
\Textendedcalma\TTthreedots\Tnuumen\Tessenuquerna
\TTthreedots\Tungwe\Tungwe\Tumbar\TTnasalizer\TTdot\Ttinco\TTthreedots\Tlambe\TTrightcurl
\tengwa{255}}
,text align=center}]
(4,0) arc [start angle=-100,end angle=100,radius=4];
\end{tikzpicture}
\end{document}
这种方法的问题是 Latex 不会输出 pdf,而是需要花费无限的时间来编译。
我在这里遗漏了什么?
答案1
类似操作。最小文件:
\documentclass[a4paper,12pt]{article}
\pdfmapfile{=tengwarscript.map}
\usepackage[annatar]{tengwarscript}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\tikzset{decoration={ text effects along path,
text={\Ttinco, \Tparma, \Tcalma, \Tquesse, \Tando, \Tumbar, \Tanga, \Tungwe,
\Tthuule, \Tformen, \Taha, \Thwesta, \Tanto, \Tampa, \Tanca, \Tunque,
\Tnuumen, \Tmalta, \Tnoldo, \Tnwalme, \Toore, \Tvala, \Tanna, \Tvilya,}
}}
\begin{document}
\begin{center}
\begin{tikzpicture}
\path [decorate, decoration= { text effects/.cd, group letters, characters={text along path}}] (0,0) circle (2);
\end{tikzpicture}
\qquad
\begin{tikzpicture}
\path [decorate, decoration= { text effects/.cd, group letters, reverse text, characters={text along path}}] (0,0) circle (2);
\end{tikzpicture}
\end{center}
\centering
\begin{tikzpicture}
\path [decorate, decoration= {text effects/.cd, group letters,reverse text, characters={text along path}}] (4,0) arc [start angle=-100,end angle=100,radius=2];
\end{tikzpicture}
\subsection*{Reverse text, group letters}
\begin{tikzpicture}
\path [decorate, decoration= {text effects/.cd, reverse text, group letters,characters={text along path}}] (0,0)..controls +(45:4cm) and +(225:4cm)..(8,0);
\end{tikzpicture}
\end{document}
输出:
编辑:2019-10-15
\documentclass[border=2mm,12pt]{standalone}
\pdfmapfile{=tengwarscript.map}
\usepackage[annatar]{tengwarscript}
\usepackage{tikz}
\usetikzlibrary{math,decorations.text,calc}
\begin{document}
\begin{tikzpicture}[decoration={text effects along path,
text={\Ttinco, \Tparma, \Tcalma, \Tquesse, \Tando, \Tumbar, \Tanga, \Tungwe,
\Tthuule, \Tformen, \Taha, \Thwesta, \Tanto, \Tampa, \Tanca, \Tunque,
\Tnuumen, \Tmalta, \Tnoldo, \Tnwalme, \Toore, \Tvala, \Tanna, \Tvilya,}, text align=center,
text effects/.cd,
character count=\i, character total=\n,
characters={evaluate={\c=\i/\n*100;}, text along path, text=red!\c!orange},
character widths={text along path, xslant=0, yscale=1}}]
\path [postaction={decorate}, preaction={decorate,
text effects={characters/.append={yscale=-1.5, opacity=0.5,
text=gray, xslant=(\i/\n-0.5)*3}}}]
(0,0) circle (2);
\end{tikzpicture}
\end{document}
输出:
使用泽佩斯安用于输出波斯语的包。