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

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

主站蜘蛛池模板: 中文字幕乱码免费专区 | 色哟哟免费精品网站入口 | 亚洲日本精品va中文字幕 | 一区二区三区 | 日韩中文字幕在线播放 | 热门影视大全 | 亚洲一区二区三区四区视频 | 亚洲中文字幕人成乱在线 | 亚洲精品一区二区三区四区高清 | 黑人巨大精品欧 | 欧美二区视频 | 亚洲色成人www永久在线观看 | 精品人伦一区二区三区 | 亚洲日本中| 亚洲日本一区二区三区在线 | 国产微信高清小视频在线播放 | 午夜三级a三级三点窝 | 韩国三级hd中文字幕电影天堂 | 91成人抖音 | 一级理论片免费观看在线 | 一本之道在线观看不卡 | 国产乱理伦片在线午夜观看 | 精品香蕉伊思人在线观看 | 午夜dj视频在线观看免费 | 天美麻花果冻苏蜜清歌 | 国产在线第一区二区三区 | 欧美精品黄页在 | 96在线视频精品 | 精品亚洲欧 | 国产妇女性爽视频免费 | 欧美一级高清在线观看 | 在线日韩日本国 | 日久精品不卡一区 | 亚洲欧美国产国产一区二区三区 | 国产日韩在线亚洲字幕中文 | 国产一国产二国产三国产 | 亚洲最大的情人在线 | 中文欧美乱码视频 | 91九色在线观看 | 2区3区在线观看 | 国语对白精品一区二区在线观看 |