setotherlanguage{arabic} 使 inline-tikz 不成為內嵌打字集

setotherlanguage{arabic} 使 inline-tikz 不成為內嵌打字集
\documentclass{article}

\usepackage{fontspec}
\usepackage{tikz}
\usepackage{polyglossia}

\setmainlanguage{french}
\setotherlanguage{arabic} % comment that line, the problem disappears.

\setmainfont[Ligatures=TeX,
             Numbers=OldStyle]{Linux Libertine O}

\newfontfamily\arabicfont[Scale=MatchLowercase,
                          Script=Arabic]{Scheherazade}

\begin{document}
before tikz insertion  \tikz[baseline=-0.5ex]\draw(0,0)circle(1ex); afteeeeeeeeeeeeer
\end{document}

我認為這與阿拉伯語特別相關,我也使用希臘語和中文,它不影響tikz

布尤格

答案1

數學模式的隱藏使用可能會迫使某些方向節點進行幹預。您可以保護裡面的程式碼\mbox

\documentclass{article}

\usepackage{fontspec}
\usepackage{tikz}
\usepackage{polyglossia}

\setmainlanguage{french}
\setotherlanguage{arabic} % comment that line, the problem disappears.

\setmainfont[Ligatures=TeX,
             Numbers=OldStyle]{Linux Libertine O}

\newfontfamily\arabicfont[Scale=MatchLowercase,
                          Script=Arabic]{Scheherazade}

\begin{document}
before tikz insertion  \mbox{\tikz[baseline=-0.5ex]{\draw(0,0)circle(1ex);}} afteeeeeeeeeeeeer
\end{document}

相關內容