【C#】強(qiáng)大的 .NET PDF處理神器:PDFSharp
當(dāng)前位置:點(diǎn)晴教程→知識(shí)管理交流
→『 技術(shù)文檔交流 』
前言PDFSharp是一款開(kāi)源的.NET庫(kù),專為處理PDF文檔而設(shè)計(jì)。它以其豐富的功能和易用性贏得了廣大開(kāi)發(fā)者的青睞。無(wú)論是創(chuàng)建、編輯、合并、拆分還是轉(zhuǎn)換PDF文件,PDFSharp都能輕松應(yīng)對(duì)。 正文 目前.NET 平臺(tái)常見(jiàn)的PDF類庫(kù)
有一說(shuō)一都挺好用的,個(gè)人特別喜歡 QuestPDF它基于 C# Fluent API 提供全面的布局引擎;但是這些庫(kù)要么屬于商業(yè)庫(kù)價(jià)格不菲(能理解收費(fèi)),但是年費(fèi)太貴了。 要么是有條件限制開(kāi)源的,如Spire開(kāi)源版本有各種限制。iTextSharp雖然沒(méi)有限制,但是開(kāi)源協(xié)議不友好(AGPL),用于閉源商業(yè)軟件屬于要掛恥辱柱的行為了。無(wú)意間發(fā)現(xiàn)了另一款基于.NET 6 的跨平臺(tái)、免費(fèi)開(kāi)源(MIT協(xié)議)pdf處理庫(kù)。 PDFSharp:https://docs.pdfsharp.net/,該庫(kù)還有基于.NET Framework的版本 https://pdfsharp.net/ 。.NET 6 版本是去年剛發(fā)布的,一個(gè)較為活躍的社區(qū) https://forum.pdfsharp.net/。 嘗試使用了下,還不錯(cuò),該有的都有,簡(jiǎn)單的pdf文件可以直接使用PDFSharp庫(kù)生成,復(fù)雜點(diǎn)的則提供了MigraDoc來(lái)編輯。 自己的小應(yīng)用都已經(jīng)上生成環(huán)境了,覺(jué)得該庫(kù)是挺ok的了。 主要功能 1、創(chuàng)建PDF:無(wú)需預(yù)先存在的模板,PDFSharp允許您直接從頭開(kāi)始構(gòu)建PDF文檔。 2、內(nèi)容插入:支持在PDF頁(yè)面中添加文本、圖像、表格、圖形等豐富元素。 3、格式化:提供字體選擇、顏色設(shè)定、布局調(diào)整等樣式控制功能,幫助您創(chuàng)建高度定制化的PDF文檔。 4、合并與拆分:能夠?qū)⒍鄠€(gè)PDF文檔合并成一個(gè),或?qū)⒁粋€(gè)PDF文檔拆分成多個(gè)部分。 5、加密與解密:對(duì)PDF文件進(jìn)行安全設(shè)置,保護(hù)文檔內(nèi)容不被非法訪問(wèn)。 優(yōu)勢(shì)特點(diǎn) 簡(jiǎn)單易用:PDFSharp提供簡(jiǎn)潔的API,使開(kāi)發(fā)人員能夠快速上手并輕松創(chuàng)建和處理PDF文檔。 全面功能:支持各種PDF操作,包括創(chuàng)建、編輯、合并、拆分、轉(zhuǎn)換和加密等,滿足不同的需求。 PDFSharp廣泛應(yīng)用于各種場(chǎng)景,如生成報(bào)告、創(chuàng)建電子書(shū)、生成發(fā)票和合同等。無(wú)論是個(gè)人用戶還是企業(yè)用戶,都能從中受益。 PDFSharp文檔 .NET Framework 文檔站點(diǎn)下有很多例子大家可以看看 我的使用方式較為粗暴,使用MigraDoc編輯文檔表格,再生成PDF文件。有時(shí)間再嘗試封裝個(gè)類似于QuestPDF的擴(kuò)展庫(kù),太喜歡Fluent這種形式了。 代碼示例 讓我們來(lái)制作下圖的PDF 新建一個(gè)項(xiàng)目,通過(guò)Nuget引入PDFsharp、PDFsharp-MigraDoc, 若用System.Drawing圖形庫(kù)則不用引用SkiaSharp,我的例子使用SkiaSharp圖形庫(kù)便于跨平臺(tái)。 首先是字體的導(dǎo)入 因?yàn)镻DFSharp本身不支持中文字體,但提供了自定義解析器的處理,所以我們先實(shí)現(xiàn)下中文字體解析器。 先將黑體作為嵌入資源導(dǎo)入項(xiàng)目中,路徑是/Fonts/下 新建一個(gè)文件ChineseFontResolver.cs用來(lái)實(shí)現(xiàn)我們的中文解析器 好了,開(kāi)始制作我們的pdf吧
至此我們就制作好了一個(gè)簡(jiǎn)單的pdf,當(dāng)然了這里沒(méi)有加上文件信息那些,僅僅是生成內(nèi)容罷了,有那些需要的可以自己根據(jù)文檔站點(diǎn)看看如何設(shè)置。 源碼地址 gitee.com/huangguishen/MyFile/tree/master/PDFSharpDemo
- EOF - 該文章在 2024/5/27 16:29:02 編輯過(guò) |
關(guān)鍵字查詢
相關(guān)文章
正在查詢... |