我想在 tikz 中输入希伯来语文本。
编辑:我正在扩展关于将文本插入特定矩形的讨论text width
。
阅读后,我尝试了以下代码这个答案和这个,但我想我使用得不text effect
正确。
\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setotherlanguage{english}
\newfontfamily\englishfont{Times New Roman}[Script=Latin,Language=English]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\begin{document}
לורם איפסום
\begin{center}
\begin{tikzpicture}
\node (hebrew-with-textwidth)[%
color=red,%
text width=3cm,%
align=right,%
decorate,%
% {decoration={text effects={reverse text}}} % What is the correct syntax?
]
{אחת שתיים שלוש ארבע חמש שש};
\end{tikzpicture}
\end{center}
\end{document}
我想要反转节点中的单词,如下所示:
答案1
由于某种原因(我目前还不完全理解),您需要明确告诉 LaTeX,节点内的文本将被视为希伯来语,因此要从右到左排版。您可以\texthebrew
在节点内部执行此操作,或者使用可能更优雅的选项font=\selectlanguage{hebrew}
:
\documentclass{article}
\usepackage[showframe]{geometry}
\usepackage{tikz}
\usepackage{polyglossia}
\setmainlanguage{hebrew}
\setotherlanguage{english}
\newfontfamily\englishfont{Times New Roman}[Script=Latin,Language=English]
\newfontfamily\hebrewfont{Arial}[Script=Hebrew]
\begin{document}
לורם איפסום
\begin{center}
\begin{tikzpicture}
\node (hebrew-with-textwidth) [%
color=red,%
text width=3cm,%
align=right,%
] {\texthebrew{אחת שתיים שלוש ארבע חמש שש}};
\node (hebrew-with-textwidth) at (0,-1) [%
color=red,%
text width=3cm,%
align=right,%
font=\selectlanguage{hebrew}
] {אחת שתיים שלוש ארבע חמש שש};
\end{tikzpicture}
\end{center}
\end{document}