C#/VB.NET 在PDF中添加文件包(Portfolio)的方法
作者:E-iceblue 时间:2023-08-28 03:01:18
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
来源:https://www.cnblogs.com/Yesi/archive/2020/06/29/13206277.html
标签:C#/VB.NET,PDF,文件包
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
普通对象使用spring容器中的对象的实现方法
2023-06-17 12:27:20
C#访问C++动态分配的数组指针(实例讲解)
2021-08-20 10:34:27
Java语言之LinkedList和链表的实现方法
2023-12-19 20:18:59
![](https://img.aspxhome.com/file/2023/0/83420_0s.png)
Java动态代理详解及实例
2023-12-08 15:51:03
Flutter有状态组件StatefulWidget生命周期详解
2023-09-25 23:56:50
![](https://img.aspxhome.com/file/2023/3/137373_0s.png)
Java BigDecimal使用方法详解
2022-03-28 03:45:23
C#实现登录窗口(不用隐藏)
2021-11-21 09:30:24
![](https://img.aspxhome.com/file/2023/6/106526_0s.gif)
Android实现银行卡号扫描识别功能
2021-09-05 01:56:50
如何使用Flutter发布安卓应用
2022-09-07 08:46:07
java异常与错误处理基本知识
2023-11-25 10:44:59
java多线程下载实例详解
2023-05-19 05:53:37
![](https://img.aspxhome.com/file/2023/9/116179_0s.png)
Java设计模式之状态模式State Pattern详解
2023-11-07 07:55:01
![](https://img.aspxhome.com/file/2023/7/80317_0s.png)
Android Map新用法:MapFragment应用介绍
2023-02-11 20:50:47
Android recyclerview实现纵向虚线时间轴的示例代码
2023-08-23 07:03:39
![](https://img.aspxhome.com/file/2023/3/102613_0s.png)
springtask 的使用方法和 cron 表达式解析
2023-06-19 20:05:56
Android图片实现压缩处理的实例代码
2022-05-28 20:29:12
Java编程用指定字符打印菱形实例
2022-02-23 05:49:09
完美解决c# distinct不好用的问题
2023-02-13 11:22:53
Java多线程之Semaphore实现信号灯
2023-09-19 23:04:51
如何通过Java实现时间轴过程解析
2022-01-02 00:31:32
![](https://img.aspxhome.com/file/2023/8/67478_0s.png)