这是我的代码,由 xelatex 编译:
\documentclass{book}
\usepackage{lipsum}
\usepackage{trimclip}
\usepackage{polyglossia}
\setdefaultlanguage{hebrew}
\setotherlanguage{english}
\newfontfamily\hebrewfont[Script=Hebrew]{Bitstream Vera Sans}
\begin{document}
hi
%\clipbox{0pt 0pt {0.6\width} 0pt}{hi}
hi
\begin{english}
\lipsum[1]
\end{english}
\end{document}
如果 clipbox 行保持注释掉,您将获得预期的结果(之后是 hi hi 和 lipsum)。但是如果您取消注释它,在 RTL 上下文中使用 clipbox,页面将变得大部分空白,并且如果文档更长,它会以其他有趣的方式变得疯狂。
如果我在 LTR 中使用它,那就没问题了。我知道。但我真正的工作是使用希伯来语,我需要这个剪辑来添加一些我想在那里添加的不错的功能。
我猜 trimclip 包不知道 bidi 但是它与文本方向密切相关。所以奇怪的 RTL 框会让它感到困惑。我该如何解决这个问题?或者也许使用其他方法来剪辑字母(意味着 RTL 也有效)?
编辑:好的。我对此做了进一步调查。trimbox 工作正常,因此问题只在于剪辑,这是由包文件中特定于驱动程序的命令执行的。默认使用 xetex 驱动程序,它似乎有这个错误。当使用 [pgf] 选项加载包时,它给出了正确的结果。但它要求我事先明确加载 graphicx 包。
但是,如果有人仍然希望纠正 xetex 驱动程序,或者至少指出其中的问题,我们会祝福他。