从长 HTML 到许多 JPEG(或任何其他图像)

发布于 2025-01-03 14:23:45 字数 162 浏览 0 评论 0原文

我有一个很长的网页(垂直) 可以认为有 40 页。

每个页面都由一个 hr 元素划分,如下所示:


并具有相同的高度:860px。

我想将该 html 中的每个“页面”转换为 jpg 格式。 当然是以自动化的方式。

有人可以建议如何吗?

I have a long web page (vertically)
which can be thought of having 40 pages.

each page is divided by a hr element like this:


and has the same height: 860px.

I would like to transform each 'page' in that html in a jpg.
In an automated way of course.

Can somebody suggest how ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

迷爱 2025-01-10 14:23:45

这不是一个容易解决的问题,因为对于一个人来说,不同的浏览器呈现的页面可能略有不同。那么,表格与网页上的外观完全一样有多重要呢?

更常见的是将 HTML 页面转换为 PDF,用于打印或电子邮件附件。有很多库可以做到这一点(但它们都有点meh),我使用 TCPDF 并取得了一些成功。

This isn't an easy problem to solve because for one, different browsers may render the page slightly differently. So how important is it that the table looks exactly like it does on the webpage?

It's more common to convert HTML pages to PDF, for printing purposes or email attachments. There are many libraries to do this (but they're all a bit meh), I've used TCPDF with some success.

思慕 2025-01-10 14:23:45

您可以

  • 创建整个页面的图像,然后使用一些图像库来分割 hr
  • 或将一些 javascript 注入您的页面并使用它隐藏除单个页面之外的所有内容,然后截取屏幕截图单独。

尝试 wkhtmltoimage,它使用无头 webkit 浏览器生成 HTML 页面的图像。 手册

或者,还有 browsershot 的 屏幕截图工厂,我还没有尝试过,但可能会完成这项工作。然而,它可能需要一些调整。

还有一些疯狂的东西,比如 用 JS 编写的 HTML 解析器,但我认为它们在这方面没有任何用处案件。只是提一下。

You may either

  • create an image of the whole page, then use some image library to split the hrs
  • or inject some javascript into your page and use it to hide everything but one single page, then take a screenshot individually.

Try wkhtmltoimage, which uses a headless webkit browser to generate images of HTML pages. Manual

Alternatively, there's browsershot's screenshot factory, which I haven't tried out but will probably do the job. However, it may require a bit of tweaking.

Then there's crazy things like HTML parsers written in JS, but I don't think they're any use in this case. Just to mention that.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文