Tabelas com texto hebraico usando babel

Aug 17 2020

Tenho um documento em hebraico que renderizo usando babele agora quero adicionar uma tabela que inclui texto em hebraico. Embora todo o documento seja renderizado corretamente, neste caso o texto é renderizado na direção errada (da esquerda para a direita em vez de da direita para a esquerda).

Eu apreciaria qualquer ajuda (também sou flexível, desde babelque o novo pacote seja suportado pelo 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}

Respostas

1 EladDen Aug 17 2020 at 10:19

babel não força o bidi em uma tabela. Você precisa fazer isso sozinho. O que faço é usar o arraypacote para definir um novo tipo de coluna para suportar o hebraico:

\newcolumntype{C}{>{\beginR}c<{\endR}}

E um MWE completo:

\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}
Davislor Nov 04 2020 at 16:09

A partir de 2020, babeloferece a tabularopção de fazer isso por você. Requer LuaTeX e não funciona perfeitamente.

\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}