4

Web ページ上の個々の画像のレンダリングとは関係ありません。目標は、Web ページ全体をレンダリングしてスクリーンショットとして保存することです。HTML ファイルのサムネイルをユーザーに表示したい。スクリーンショットを作成する HTML ファイルは、MIME 電子メール メッセージの HTML 部分になります。理想的には、MIME ファイル全体のスナップショットを作成したいと考えていますが、これを HTML ファイルに変換できれば問題ありません。

API が理想的ですが、実行可能ファイルも優れています。

4

2 に答える 2

1

html2ps が必要で、パッケージ ImageMagick から変換します。

html2ps index.html index.ps 
convert index.ps index.png 

2 番目のプログラムは、長い html ページのページごとに 1 つの png を生成します。ページ レイアウトは html2ps によって行われました。

次のように報告されたプログラム evince-thumbnailer を見つけました。

apropos postscript | grep -i png 
evince-thumbnailer (1) - create png thumbnails from PostScript and PDF documents

しかし、単純な最初のテストでは機能しませんでした。

複数のページを 1 つの大きな画像に結合したい場合は、convert が役立ちます。

これで、 convert が html で直接動作することがわかりました。

convert index.html index.png 

も動作します。出力に違いは見られず、画像のサイズはほぼ同じです。

マルチパート MIME タイプの電子メールの場合、通常、メール ヘッダー、おそらくプレ HTML テキスト、HTML、および添付ファイルがあります。

HTML を抽出して個別にフォーマットすることはできますが、埋め込まれたものをレンダリングするのはそれほど簡単ではないかもしれません。

これは私がテストした 4 月 14 日のファイルです。そのため、メールフォルダーから 1 つのメールを抽出します。

sed -n "/From - Sat Apr 14/,/From -/p" /home/stefan/.mozilla-thunderbird/k2jbztqu.default/Mail/Local\ Folders-1/Archives.sbd/sample | \
sed -n '/<html>/,/<\/html>/p' | wkhtmltopdf - - > sample.pdf

次に、その html 部分だけを抽出します。

wkhtmltopdf は- - 、stdin の読み取り/stdout への書き込みに必要です。PDF はレンダリングされますが、ワークフローに統合する方法がわかりません。

wkhtml ...あなたはと置き換えることができます

 convert - sample.jpg 
于 2012-05-09T22:00:39.340 に答える
0

私はwkhtmltoimageで行きます。これは、xvfb を正しくセットアップすると機能しました。Postscript の提案が正しくレンダリングされませんでした。pdf ではなく img が必要です。

于 2012-05-11T16:57:43.817 に答える