7

大きなレポート テーブルの PDF レンダリングを作成したいと考えています。rowSpanしかし、phantomjs はこの属性をサポートしていないようです。次に例を示します。

phantomjs rasterize.js "http://fiddle.jshell.net/eric777/SLtGa/show/" report.pdf A4

これがjsfiddleです

そして、これが結果です[

これに対する回避策はありますか?

編集:

たぶん、誰かがこの問題を webkit で修正できますか?

4

1 に答える 1

11

2018年アップデート

2018 年 3 月現在、PhantomJS の開発は中断されており、代わりにヘッドレス Chromeを使用することが推奨され ています。WebKit、したがって Safari にはまだこの問題があるようですが、ヘッドレス Chrome を含む Chrome では、表が 2 つのページにきれいに分割されるようになりました。

Chrome ベースの Opera ブラウザからのページ分割


元の投稿

これは phantomjs のバグではなく、WebKit が改ページを処理する方法です。(Chrome も。) これは、ページを Safari で開き、「US Letter」サイズで印刷してみるとわかります。フィドルが(短い)USレターサイズの2ページに収まるのに、なぜA4サイズで3ページになるのかわかりませんが、それは的外れだと思います。

一般に、私が認識している HTML から PDF へのコンバーターはすべて、これとまったく同じ問題を抱えているか、容認できないほどバグが多いと見なされるほど問題を解決するのが困難です。たとえば、wkhtmltopdf のテーブル行内で改ページを回避する方法を参照してください。

JavaScript を使用して WebKit がテーブルを適切に分割できるようにする方法については、こちら を参照してくださいまた、問題の詳細についても説明しています。

于 2013-05-11T22:06:21.387 に答える