Pandoc 将 HTML 表转换为 PDF 导致非包装表
Pandoc converting HTML tables to PDF results in non-wrapped tables
我有一些 HTML 表格,在使用浏览器呈现时看起来通常是环绕的。但是当我尝试使用 pdftex
转换为 pdf 时,表格的边缘被截断并且没有换行。如何让 pandoc 包装 HTML 表?
和markdown问题不一样。表格是纯 html.
问题是,如果您希望单元格换行,LaTeX 需要明确指定列宽,因此您需要以某种方式手动指定这些列宽(在 markdown 中您会 do this using multiline or grid tables)。
Pandoc 的 HTML Reader 支持 col
元素上的相对 width
属性。
pandoc -f html -t latex << EOF
> <table>
> <colgroup>
> <col width="10%">
> <col width="90%">
> </colgroup>
> <tr>
> <td>3476896</td>
> <td>My first HTML</td>
> </tr>
> </table>
>
> EOF
\begin{longtable}[c]{@{}ll@{}}
\toprule
\begin{minipage}[t]{0.09\columnwidth}\raggedright\strut
3476896
\strut\end{minipage} &
\begin{minipage}[t]{0.85\columnwidth}\raggedright\strut
My first HTML
\strut\end{minipage}\tabularnewline
\bottomrule
\end{longtable}
注意 LaTeX 输出中的 \columnwidth
。
如果您无法控制 HTML,您可以写一个 Pandoc filter that modifies the document's AST and sets some arbitrary column widths that add up to 100%. Maybe you should also revive this old thread on pandoc-discuss,其中 jgm aka fiddlosopher 写道:
The main reason is that with more complex tables,
we need information about relative column widths,
which the HTML document lacks. But I think I'm
becoming convinced that we should just guess at these.
或提交 feature request 申请。
我有一些 HTML 表格,在使用浏览器呈现时看起来通常是环绕的。但是当我尝试使用 pdftex
转换为 pdf 时,表格的边缘被截断并且没有换行。如何让 pandoc 包装 HTML 表?
和markdown问题不一样。表格是纯 html.
问题是,如果您希望单元格换行,LaTeX 需要明确指定列宽,因此您需要以某种方式手动指定这些列宽(在 markdown 中您会 do this using multiline or grid tables)。
Pandoc 的 HTML Reader 支持 col
元素上的相对 width
属性。
pandoc -f html -t latex << EOF
> <table>
> <colgroup>
> <col width="10%">
> <col width="90%">
> </colgroup>
> <tr>
> <td>3476896</td>
> <td>My first HTML</td>
> </tr>
> </table>
>
> EOF
\begin{longtable}[c]{@{}ll@{}}
\toprule
\begin{minipage}[t]{0.09\columnwidth}\raggedright\strut
3476896
\strut\end{minipage} &
\begin{minipage}[t]{0.85\columnwidth}\raggedright\strut
My first HTML
\strut\end{minipage}\tabularnewline
\bottomrule
\end{longtable}
注意 LaTeX 输出中的 \columnwidth
。
如果您无法控制 HTML,您可以写一个 Pandoc filter that modifies the document's AST and sets some arbitrary column widths that add up to 100%. Maybe you should also revive this old thread on pandoc-discuss,其中 jgm aka fiddlosopher 写道:
The main reason is that with more complex tables, we need information about relative column widths, which the HTML document lacks. But I think I'm becoming convinced that we should just guess at these.
或提交 feature request 申请。