【问题标题】:How to save part of an html page to an image or pdf either on client (javascript) or asp.net on the server side?如何在客户端(javascript)或服务器端的asp.net上将部分html页面保存为图像或pdf?
【发布时间】:2013-10-11 08:19:40
【问题描述】:

有没有办法实现功能,以便用户可以右键单击 Html 页面的子部分(例如 DIV 或其他容器元素),以便可以将该部分保存为图像/pdf(使用 javascript)?

或者(理想情况下)这可以在 ASP.NET 的服务器端完成吗?

用例如下:

我有一些在 asp.NET 中生成的复杂网页,并使用 javscript Flot 库制作图表。我想重用部分 html 页面来生成 PDF 报告或至少可以轻松插入到报告中的图像快照。我环顾四周,似乎有一个工具 wkhmltopdf 可以将整个页面转换为 PDF,但是有两个问题:

  1. 此工具需要单独运行,对终端用户不友好
  2. 该工具提取页面上的所有内容,例如菜单页眉、页脚等

对于第二个问题,我可以生成没有页眉/页脚和菜单的网页,然后使用该工具,但这并不能解决问题 1。理想情况下,我希望每周自动生成报告,因此用户只需要下载它。

为此,真正需要的是某种方式将 id 引用的 DIV(或其他元素)存储为 pdf 或图像。这样我就不需要编写单独的代码来生成报告。我意识到将 html 转换为 PDF 会降低质量,但就我们的目的而言,这并不重要。

【问题讨论】:

    标签: javascript c# html asp.net


    【解决方案1】:

    IECapt# 是用 C# 编写的 IECapt 的新实验版本,用于将网页呈现为 BMP、JPEG 或 PNG 图像文件。

    http://iecapt.sourceforge.net/

    如果您想根据需要裁剪捕获的图像,或者为工具提供您真正想要的 html 作为图像而不是整个页面,则必须进行一些计算。

    希望这会有所帮助。

    【讨论】:

      【解决方案2】:

      如果这可以帮助其他人,我最终选择了 iTextSharp 库,它非常强大并且可以处理 svg。它不会执行一般的 html5 到 pdf 转储,但只需一些代码,我就可以完成我需要的大部分工作。

      主要网站是: http://itextpdf.com/

      下载: http://sourceforge.net/projects/itextsharp/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-08-29
        • 1970-01-01
        • 1970-01-01
        • 2017-05-10
        • 2023-04-08
        • 1970-01-01
        • 2012-11-29
        相关资源
        最近更新 更多