C# 通过chrome插件将HTML网页转换为PDF

发布于:2025-03-13 ⋅ 阅读:(33) ⋅ 点赞:(0)

将HTML网页内容转换为 PDF 格式能方便文档的后续打印、存档和分享等。之前介绍过如何通过QT插件将HTML转为PDF文件,本文将介绍另一个新的转换方法,通过谷歌浏览器Chrome插件将HTML网页转PDF文件。

C# 通过Chrome插件将HTML网页转换为PDF文件

Spire.PDF for .NET新增了 ChromeHtmlConverter.ConvertToPdf() 方法,支持使用 Chrome 浏览器插件将 HTML 网页转换为 PDF。该方法中的 3 个参数为:

  • string input:输入 HTML 文件路径
  • string output:输出 PDF 文件路径
  • ConvertOptions:转换设置,可自定义设置转换超时、PDF 纸张大小和页边距等

示例代码如下:

using Spire.Additions.Chrome;

namespace ConvertHtmlToPdfUsingChrome
{
    internal class Program
    {
        static void Main(string[] args)
        {
            // 指定输入输出文档路径
            string inputUrl = @"https://www.e-iceblue.cn/about-us.html";
            string outputFile = @"HtmlToPDF.pdf";

            // 指定Chrome插件的路径
            string chromeLocation = @"C:\Program Files\Google\Chrome\Application\chrome.exe";

            // 创建 ChromeHtmlConverter 对象
            ChromeHtmlConverter converter = new ChromeHtmlConverter(chromeLocation);

            // 创建 ConvertOptions 对象
            ConvertOptions options = new ConvertOptions();
            // 设置转换超时
            options.Timeout = 10 * 3000;
            // 设置转换后PDF页面的纸张大小和页边距
            options.PageSettings = new PageSettings()
            {
                PaperWidth = 8.27,
                PaperHeight = 11.69,
                MarginTop = 0,
                MarginLeft = 0,
                MarginRight = 0,
                MarginBottom = 0

            };

            // 将HTML网页转换为PDF
            converter.ConvertToPdf(inputUrl, outputFile, options);
        }
    }
}

如果你想要在转换过程中输出日志,可以调用ChromeHtmlConverter.Logger属性。

示例代码如下:

using Spire.Additions.Chrome;

namespace ConvertHtmlToPdfUsingChrome
{
    internal class Program
    {
        static void Main(string[] args)
        {
            //指定输入输出文档路径
            string inputUrl = @"https://www.e-iceblue.cn/about-us.html";
            string outputFile = @"HtmlToPDF.pdf";

            // 指定日志文件路径
            string logFilePath = @"Logs.txt";

            // 指定Chrome插件的路径
            string chromeLocation = @"C:\Program Files\Google\Chrome\Application\chrome.exe";

            // 创建ChromeHtmlConverter对象
            ChromeHtmlConverter converter = new ChromeHtmlConverter(chromeLocation);
            // 启用日志记录
            converter.Logger = new Logger(logFilePath);

            // 创建ConvertOptions对象
            ConvertOptions options = new ConvertOptions();
            // 设置转换超时
            options.Timeout = 10 * 3000;
            // 设置转换后PDF页面的纸张大小和页边距
            options.PageSettings = new PageSettings()
            {
                PaperWidth = 8.27,
                PaperHeight = 11.69,
                MarginTop = 0,
                MarginLeft = 0,
                MarginRight = 0,
                MarginBottom = 0

            };

            // 将HTML网页转换为PDF
            converter.ConvertToPdf(inputUrl, outputFile, options);
        }
    }
}

如果使用过程中遇到任何问题,可前往论坛交流。
https://www.e-iceblue.com/forum/forum-f16.html