表格环境中的 tex4ht 非罗马语言

表格环境中的 tex4ht 非罗马语言

我有带重音字母和其他非罗马文字的表格,但它们没有出现在环境中tabular

这些字母确实出现在表格环境之外。

我编译make4ht -ul hello.tex

我使用了@michal.h21 的 tex4ht 扩展,

https://github.com/michal-h21/helpers4ht

\documentclass[oneside,a4paper, 12pt]{article}

\usepackage{tabularx}
\usepackage{tabulary}
\usepackage{array}
\usepackage{longtable}
%\usepackage{ragged2e}
%\usepackage{multirow}
%\usepackage[table]{xcolor}
%\usepackage{eqparbox}
%\usepackage{calligra}
%\usepackage{tabu}

 \usepackage{alternative4ht}
  \altusepackage{fontspec}
  \setmainfont{TeX Gyre Termes}
  \newfontfamily\greekfont{Linux Libertine O}
  \newfontfamily\russianfont{Linux Libertine O}
  \newfontfamily\hindifont{Siddhanta}
  \altusepackage{polyglossia}
  \setmainlanguage{french}
  \setotherlanguage{czech}
  \setotherlanguage{greek}
  \setotherlanguage{russian}
  \setotherlanguage{hindi} 




%\usepackage{array}
\newcolumntype{Q}{>{\global\let\currentrowstyle\relax}}
\newcolumntype{A}{>{\currentrowstyle}}
\newcommand{\rowstyle}[1]{\gdef\currentrowstyle{#1}%
  #1\ignorespaces
}

\begin{document}


Πράγα   \qquad Μολδάβα \qquad ústředních \qquad Запад \\
éè©«»€  \qquad युरोप \qquad cœur \qquad ññā āṇ

\vspace{2cm}



\begin{tabular}{Qc Ac Ac Ac}
\rowstyle{\upshape\mdseries}
Πράγα   & Μολδάβα & ústředních & Запад  \tabularnewline
\hline\rowstyle{\itshape\mdseries}
éè©«»€  & युरोप & cœur & ññā āṇ
\end{tabular}


\newpage



\begin{tabular}{Qc Ac Ac}   \hline
  \rowstyle{\bfseries}
  Heading & Big and &  Bold \\ \hline
  Meek & mild & entry      \\
  Meek & mild & entry      \\
  \rowstyle{\itshape}
  Strange & and & italic   \\
  Meek & mild & entry      \\ \hline
\end{tabular}









%%%\begin{tabularx}{\textwidth}{ |X|X|X|X| }
%%%  \hline
%%%  label 1 & label 2 & label 3 & label 4 \\
%%%  \hline 
%%%  item 1  & item 2  & item 3  & item 4  \\
%%%  \hline
%%%\end{tabularx}
%%%
%%%\begin{tabular}{| l | p{9cm} |}
%%%\hline
%%%\textbf{Column Name} & \textbf{Column Description} \\ \hline
%%%Test line 1 & Insert text here (line 1)\\ \hline
%%%Test line 2 & Insert text here (line 2)\\ \hline
%%%Test line 3 & Insert text here (line 3) \\ \hline
%%%\end{tabular}


\end{document}

答案1

您又发现了 中的另一个错误helpers4ht,感谢您的测试 :)。问题在于字符处理是在LuaTeX节点处理回调中完成的。在本例中,它是pre_linebreak_filter,在段落被分成行之前被调用。但在某些情况下,例如在表格单元格中,它不会被调用。为了支持这种情况,还需要调用hpack_filter

我已经更新了helpers4ht,请安装新版本。正确结果:

在此处输入图片描述

相关内容