\pbox{max width}{text} 可以在 tex4ht 中使用吗?
如果不能,有没有其他方法可以让我在 htlatex 中自动换行(手动或自动)。在我的阅读中有一个\begin{tabular}{|p{1cm}|p{3cm}|}
我不想使用的选项(如果它有效 - 我没有测试过,因为我仍然需要这种级别的控制)。
当我使用 htlatex 进行编译时,我得到:
! Argument of \g: Advance has an extra }.
<inserted text>
\par
...
?
相同的 MWE 在 xelatex 中编译良好。
梅威瑟:
\documentclass{report}
\usepackage[flushleft]{threeparttable}
\usepackage{tabularx}
\usepackage{pbox}
\makeatletter
\newlength\myheight
\setlength{\@fptop}{5pt}
\def\hlinewd#1{\noalign{\ifnum0=`}\fi\hrule \@height #1 \futurelet\reserved@a\@xhline}
\providecommand*\setfloatlocations[2]{\@namedef{fps@#1}{#2}}
\setfloatlocations{table}{htbp}
\makeatother
\newcommand{\showfontsize}{\f@size{} pt}
\begin{document}
Test document
\begin{table}
\begin{threeparttable}
\caption{Demo table}
\label{tbl:Demo}
\begin{tabular}[c]{l c c}
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
TA & \pbox{3em}{TB NN} & TC \\
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
$\beta$ & B & C \\
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}
答案1
我不知道为什么\pbox
不起作用,但你可以改用varwidth
。
以下是一个例子:
\documentclass{report}
\usepackage[flushleft]{threeparttable}
\usepackage{tabularx}
\usepackage{varwidth}
\makeatletter
\newlength\myheight
\setlength{\@fptop}{5pt}
\def\hlinewd#1{\noalign{\ifnum0=`}\fi\hrule \@height #1 \futurelet\reserved@a\@xhline}
\providecommand*\setfloatlocations[2]{\@namedef{fps@#1}{#2}}
\setfloatlocations{table}{htbp}
\makeatother
\newcommand{\showfontsize}{\f@size{} pt}
\begin{document}
Test document
\begin{table}
\begin{threeparttable}
\caption{Demo table}
\label{tbl:Demo}
\begin{tabular}[c]{l c c}
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
TA & \begin{varwidth}{3em}TB\\ NN\end{varwidth} & TC \\
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
TA & \begin{varwidth}{20em}TB\\ NN\end{varwidth} & TC \\
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
$\beta$ & B & C \\
\ifdefined\HCode \cline{1-3} \else \hlinewd{1.5pt} \fi
\end{tabular}
\end{threeparttable}
\end{table}
\end{document}
请注意,第二种情况的最大宽度为 20em,但在下面的 HTML 渲染屏幕截图中,它占据的空间与第一种情况相同。