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
(完)