日韩欧美国产精品免费一二-日韩欧美国产精品亚洲二区-日韩欧美国产精品专区-日韩欧美国产另-日韩欧美国产免费看-日韩欧美国产免费看清风阁

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

【C#】ChromiumHtmlToPdf:Net跨平臺輕松將HTML轉換為PDF,替代 wkHtmlToPdf 的開發庫

admin
2025年3月22日 22:52 本文熱度 238

什么是 ChromiumHtmlToPdf?

ChromiumHtmlToPdf 是一個 100% 純托管的 C# .NETStandard 2.0 庫和 .NET 8 控制臺應用程序,也適用于 Linux 和 macOS。它利用 Google Chrome 或 Microsoft Edge 瀏覽器將 HTML 轉換為 PDF 格式,(MIT 許可證授權)。

從 4.0 版本開始,該庫已完全支持異步操作,但仍然可以選擇不使用異步功能。

一個替代 wkHtmlToPdf 的工具。雖然 wkHtmlToPdf 是一個很棒的工具,但該項目已在 GitHub 上歸檔,不再添加新功能,且與 HTML5 的兼容性也不夠完美。

安裝使用

在 Visual Studio 的包管理器控制臺中,輸入以下命令:

Install-Package ChromeHtmlToPdf

從代碼中轉換文件或網址

using ChromiumHtmlToPdfLib;
using ChromiumHtmlToPdfLib.Settings;

namespaceChromeHtmlToPdfDemo
{
    internalclassProgram
    {
        static void Main(string[] args)
        {
            // 創建 PageSettings 實例
            var pageSettings = new PageSettings();

            // 創建輸入 URI
            var inputUri = new ConvertUri("https://www.dotnetshare.com/");

            // 創建輸出流(例如,保存到文件)
            using (var outputStream = new FileStream(@"dotnetshare.pdf", FileMode.Create, FileAccess.Write))
            {
                // 創建 Converter 實例
                using (var converter = new Converter())
                {
                    // 調用 ConvertToPdf 方法
                    converter.ConvertToPdf(inputUri, outputStream, pageSettings);
                }
            } 
        }
    }
}

當然也可以使用異步方式

在 Linux 或 macOS 上安裝

安裝 Chrome

關于如何在 Linux 上安裝 Chrome,請參閱此鏈接:

https://support.google.com/chrome/a/answer/9025903?hl=en

關于如何在 macOS 上安裝 Chrome,請參閱此鏈接:

https://support.google.com/chrome/a/answer/7550274?hl=en

在 Linux Ubuntu 上安裝 Chrome 的示例

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

sudo sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'

sudo apt-get update

sudo apt-get install google-chrome-stable

google-chrome --version

google-chrome --no-sandbox --user-data-dir

問題

在 Linux 或 Docker 容器中使用該庫

為了使庫正常工作,--no-sandbox 標志將默認設置(在 Windows 上不會設置此標志)。該庫會自動檢測您運行代碼的操作系統,并在需要時設置該標志。如果由于某種原因您遇到轉換錯誤,請檢查是否設置了該標志,如果沒有,則手動添加它。

converter.AddChromiumArgument("--no-sandbox");
當 Chrome 在 Docker 容器中因未知原因崩潰時

在大多數桌面 Linux 發行版中,/dev/shm 分區的默認大小足夠大。然而,在許多使用 Docker 容器的云提供商(如 Google App Engine Flexible Environment)或 Heroku 上,/dev/shm 的默認大小明顯較小(分別為 64MB 和 5MB)。在這些平臺上,無法更改 /dev/shm 的大小,這使得使用 Chrome 變得困難甚至不可能,尤其是對于那些希望利用其新的無頭模式的用戶。

如果無法更改分區大小,則添加 --disable-dev-shm-usage 標志,告知 Chrome 不要使用該分區。

converter.AddChromiumArgument("--disable-dev-shm-usage");


閱讀原文:原文鏈接


該文章在 2025/3/24 17:09:09 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品黑色丝袜在线观看 | 精品国产污污免费网站入口 | 丰满岳妇乱一区二区三区 | 欧美日韩综合另类 | 久在线精品视频线观看 | 国产精品另| 性插爽视频欧 | 亚洲激情婷婷 | 国产97盗摄视频一区二区三区 | 在线观看视频导 | 精品夜恋影院亚洲欧洲 | 最新国语自产精品视频在 | 国产天堂在线丝袜一区 | 国产大片51精品免费观看 | 色中色影视 | 51精产国品一二三产区区 | 最新国产福利在线观看精品 | 99久re热视频这里只有精品6 | 亚洲精品天堂在线 | 国产精品免费高清在线观看 | 极品尤物一区二区 | 国产一区二区四五区在线视频 | 国产精品自产拍 | 欧美国产日韩a在线观看 | 国产3344视频在 | 亚洲精品国产v片 | 精品91自产拍在线观看一区 | 国产全部视频在线播放 | 中文字幕日韩一区二区三区不卡 | 色老板精品视频在线观看 | 亚洲欧美性生活视频 | 亚洲欧美日韩综合第一页 | 欧产日产国产精品精品 | 红桃www.ht84pp成人 | 国产精品全网免费在线播放 | 国产在线观看精品国产 | 欧美高清性色生活片免费观 | 中文字幕高清在线免费播放 | 中文字幕在线精品视频万部 | 午夜国产一区二区三区在线观看 | 精品一区二区三区四区 |