我有一个希伯来语文档,我使用它进行渲染babel
,现在我想添加一个包含希伯来语文本的表格。虽然整个文档渲染正常,但在这种情况下,文本渲染的方向是错误的(从左到右,而不是从右到左)。
babel
我将非常感激任何帮助(只要 Overleaf 支持新的软件包,我也可以灵活地转移)。
\documentclass{article}
\usepackage[utf8x]{inputenc}
\usepackage[english,hebrew]{babel}
\selectlanguage{hebrew}
\usepackage[top=2cm,bottom=2cm,left=2.5cm,right=2cm]{geometry}
\begin{document}
\begin{center}
\begin{tabular}{||c |c||}
\hline
טור 1 & טור 2 \\[0.5ex]
\hline\hline
1 & 6 \\
\hline
\end{tabular}
\end{center}
\end{document}
答案1
babel 不会强制在 tabular 上使用 bidi。您需要自己做。我所做的是使用array
包定义一种新的列类型来支持希伯来语:
\newcolumntype{C}{>{\beginR}c<{\endR}}
以及完整的 MWE:
\documentclass{article}
\usepackage[utf8x]{inputenc}
\usepackage[english,hebrew]{babel}
\selectlanguage{hebrew}
\usepackage[top=2cm,bottom=2cm,left=2.5cm,right=2cm]{geometry}
\usepackage{array}
\newcolumntype{C}{>{\beginR}c<{\endR}}
\begin{document}
\begin{center}
\begin{tabular}{||C |C||}
\hline
טור 1 & טור 2 \\[0.5ex]
\hline\hline
1 & 6 \\
\hline
\end{tabular}
\end{center}
\end{document}
答案2
自 2020 年起,babel
支持tabular
为您执行此操作的选项。它需要 LuaTeX,并且无法完美运行。
\documentclass{article}
\usepackage[english, bidi=basic, layout=sectioning.tabular]{babel}
\usepackage{fontspec}
\babelprovide[import,main]{hebrew}
\usepackage[top=2cm,bottom=2cm,left=2.5cm,right=2cm]{geometry}
\babelfont{rm}
[Ligatures={Common,Discretionary,TeX}]{Libertinus Serif} % Or any font that supports Hebrew.
\babelfont{sf}
[Ligatures={Common,Discretionary,TeX}]{Libertinus Sans}
\babelfont{tt}
[Ligatures=TeX]{Libertinus Mono}
\begin{document}
\begin{center}
\begin{tabular}{||c |c||}
\hline
טור 1 & טור 2 \\[0.5ex]
\hline\hline
1 & 6 \\
\hline
\end{tabular}
\end{center}
\end{document}