HTML文件截图为.jpg或其他图像

与在网页上呈现单个图像无关.目标是渲染整个网页将其保存为截图.想要向用户显示 HTML文件缩略图.我将截图的 HTML文件将是MIME电子邮件中的HTML部分 – 理想情况下,我想对整个MIME文件进行快照,但如果我可以对HTML文件执行此操作,那么我将处于良好状态.

API是理想的,但可执行文件也很好.

解决方法

你需要html2ps,并从包 ImageMagick转换:

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

第二个程序为一个长html页面生成每页一个png – 页面布局由html2ps完成.

我发现了一个程序evince-thumbnailer,据报道:

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

但它不适用于简单的第一次测试.

如果您想将多个页面组合成一个更大的图像,转换将确保您的帮助.

现在我看到,转换直接在html上运行,所以

convert index.html index.png

也应该工作.我没有看到输出的差异,并且图像的大小几乎相同.

如果你有一个多部分mime类型的电子邮件,你通常有一个邮件标题,可能是一些pre-html文本,html和附件.

你可以提取html并单独格式化 – 但是嵌入它可能并不那么容易.

这是我测试的文件,它是从4月14日开始的,所以我从邮件文件夹中提取了一封邮件

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

相关文章

vue阻止冒泡事件 阻止点击事件的执行 &lt;div @click=&a...
尝试过使用网友说的API接口获取 找到的都是失效了 暂时就使用...
后台我拿的数据是这样的格式: [ {id:1 , parentId: 0, name:...
JAVA下载文件防重复点击,防止多次下载请求,Cookie方式快速简...
Mip是什么意思以及作用有哪些