C#/VB.NET 在PDF中添加文件包(Portfolio)
PDF文件包(Portfolio)允许用户将多种不同类型的文件如Word、Excel、PDF、PowerPoint和图片等集合到一个PDF文件中,用户可以打开、更改PDF文件包中的单个文件。添加文件包时,可支持创建文件包时并直接将文件添加到文件包;或者创建文件包的同时创建文件夹,并将文件添加到文件夹。
环境准备:程序中需要使用到PDF类库工具(Spire.PDF for .NET hotfix 6.5.15及以上版本)下载后,解压,将Bin文件夹下的dll文件添加引用到VS程序。如下效果:
1. 创建文件包时直接添加文件
C#
using Spire.Pdf; using System; namespace CreatePDFPortfolio_PDF { class Program { static void Main(string[] args) { //创建数组 String[] files = new String[] { "sample.pdf", "sample.docx", "sample.xlsx", "sample.txt", "sample.pptx" }; //创建PdfDocument实例 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("test.pdf"); //创建PDF文件包并添加文件 for (int i = 0; i < files.Length; i++) { pdf.Collection.AddFile(files[i]); } //保存文档 pdf.SaveToFile("PortfolioWithFiles.pdf", FileFormat.PDF); System.Diagnostics.Process.Start("PortfolioWithFiles.pdf"); } } }
VB.NET
Imports Spire.Pdf Namespace CreatePDFPortfolio_PDF Class Program Private Shared Sub Main(args As String()) '创建数组 Dim files As [String]() = New [String]() {"sample.pdf", "sample.docx", "sample.xlsx", "sample.txt", "sample.pptx"} '创建PdfDocument实例 Dim pdf As New PdfDocument() pdf.LoadFromFile("test.pdf") '创建PDF文件包并添加文件 For i As Integer = 0 To files.Length - 1 pdf.Collection.AddFile(files(i)) Next '保存文档 pdf.SaveToFile("PortfolioWithFiles.pdf", FileFormat.PDF) System.Diagnostics.Process.Start("PortfolioWithFiles.pdf") End Sub End Class End Namespace
2. 创建文件包时创建文件夹,并将文件添加到文件夹
C#
using Spire.Pdf; using Spire.Pdf.Collections; using System; namespace CreatePDFPortfolio2 { class Program { static void Main(string[] args) { //创建数组 String[] files = new String[] { "sample.pdf", "sample.docx", "sample.xlsx", "sample.txt", "sample.pptx" }; //创建PdfDocument实例 PdfDocument doc = new PdfDocument(); //创建PDF文件包,添加文件夹,并向文件夹添加文件 for (int i = 0; i < files.Length; i++) { PdfFolder folder = doc.Collection.Folders.CreateSubfolder("Folder" + i); folder.AddFile(files[i]); } //保存文档 doc.SaveToFile("PortfolioWithFolders2.pdf", FileFormat.PDF); System.Diagnostics.Process.Start("PortfolioWithFolders2.pdf"); } } }
VB.NET
Imports Spire.Pdf Imports Spire.Pdf.Collections Namespace CreatePDFPortfolio2 Class Program Private Shared Sub Main(args As String()) '创建数组 Dim files As [String]() = New [String]() {"sample.pdf", "sample.docx", "sample.xlsx", "sample.txt", "sample.pptx"} '创建PdfDocument实例 Dim doc As New PdfDocument() '创建PDF文件包,添加文件夹,并向文件夹添加文件 For i As Integer = 0 To files.Length - 1 Dim folder As PdfFolder = doc.Collection.Folders.CreateSubfolder("Folder" + i) folder.AddFile(files(i)) Next '保存文档 doc.SaveToFile("PortfolioWithFolders2.pdf", FileFormat.PDF) System.Diagnostics.Process.Start("PortfolioWithFolders2.pdf") End Sub End Class End Namespace
(完)
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 上周热点回顾(2.17-2.23)
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
2018-06-29 C# 如何在PDF中绘制不同风格类型的文本
2015-06-29 [C#]浅析ref、out参数