以下 LaTeX 代码保存在 中~/test.tex
。
\documentclass{article}
\usepackage{adjustbox,tikz}
%\usepackage[bidi=basic]{babel}
%\babelprovide[main]{hebrew}
\begin{document}
\begin{adjustbox}{center}
\tikz \draw (0,0) rectangle (8,1);
\end{adjustbox}
\end{document}
然后在终端中执行以下命令:lualatex ~/test
。因此,生成了文件~/test.pdf
。在 PDF 查看器中打开时,文件显示如下。(屏幕截图中故意省略了页码。)
请注意,按照环境的规定,矩形在页面上水平居中adjustbox
。
我现在取消注释了两行注释,然后重新运行lualatex ~/test
。生成了一个文件~/test.pdf
。在 PDF 查看器中打开时,文件显示如下。(页码故意从屏幕截图中排除。)
请注意,矩形不再位于页面的水平中心。事实上,它延伸到了页面的右边缘之外。
为什么babel
代码会影响矩形的显式定位?如何修复这个问题?
答案1
layout=graphics
为了修复这个问题,向 Babel添加选项:
\documentclass{article}
\usepackage{adjustbox,tikz}
\usepackage[bidi=basic, layout=graphics]{babel}
\babelprovide[main]{hebrew}
\begin{document}
\begin{adjustbox}{center}
\tikz \draw (0,0) rectangle (8,1);
\end{adjustbox}
\end{document}
该选项是在 Babel 3.32 中添加的,手册对其描述如下:
修改图片环境,使整个图形为 L,但文本为 R。它不适用于标准图片,需要 pict2e。它尝试对 pgf/tikz 执行相同操作。有点实验性。