易捷 > PDF教程 > PDF开发/编程技术 >

利用 Aspose.Pdf 开发,将PDF文档拆分,或变成单页

分享到:
发布时间:2013-05-15 14:04   浏览次数:

Aspose.Pdf.Kit现在支持一个新特性:将一个PDF文档拆分成单页面的PDF文档。这个特性允许开发人员在使用Aspose.Pdf.kit编辑PDF文档时,对PDF文档有更细致的控制。使用Aspose.Pdf.kit开发,将PDF拆分成单页面的文档变得非常方便。

PdfFileEditor类中加入了SplitToPages方法来实现这个功能。按下面的步骤来拆分文档:

调用PdfFileEditor的默认构造函数创建一个PdfFileEditor对象;
调用PdfFileEditor对象的SplitToPages方法,将源PDF文件作为流传递或者仅将文件名作为字符串传递。
SplitToPages方法将源文档中的所有页面拆分成单页面的PDF文档,然后将单页面文档存储为内存流的数组。
最后,开发人员可以编写代码使用文件流将内存流转换成PDF文件。
示例代码:

[C#]

//将PDF文件名存储在变量中供以后使用
string inFile1 = "example1.pdf";

//调用PdfFileEditor类的空构造函数实例化一个PdfFileEditor对象
PdfFileEditor pdfEditor = new PdfFileEditor();

//初始化一个数值变量用来生成唯一的输出文件名
int fileNum = 1;

/* 调用SplitToPages方法,以输入PDF文件名为参数
* 将返回的单页PDF文件保存到内存流数组中*/
MemoryStream[] outBuffer = pdfEditor.SplitToPages(inFile1);

//依次遍历所有的内存流对象
foreach(MemoryStream aStream in outBuffer)
{

//实例化FileStream对象用于输出单页PDF文档
FileStream outStream = new FileStream("oneByone" +
fileNum.ToString() + ".pdf",FileMode.Create);

/* 将内存流的内容写到文件流中
* 创建单页的PDF输出文档
*/
aStream.WriteTo(outStream);

//关闭输出文件流
outStream.Close();

//递增数值变量以得到不同的值
fileNum++;
}


[VB.NET]

'将PDF文件名存储在变量中供以后使用
Dim inFile1 As String = "example1.pdf"

'调用PdfFileEditor类的空构造函数实例化一个PdfFileEditor对象
Dim pdfEditor As PdfFileEditor = New PdfFileEditor()

'初始化一个数值变量用于生成唯一的输出文件名
Dim fileNum As Integer = 1

'调用SplitToPages方法,以输入PDF文件名为参数
'将返回的单页PDF文件保存到内存流数组中
Dim outBuffer() As MemoryStream = pdfEditor.SplitToPages(inFile1)

'声明一个临时内存流对象
Dim aStream As MemoryStream

'依次遍历所有的内存流对象
For Each aStream In outBuffer

'实例化FileStream对象用于输出单页PDF文档
Dim outStream As FileStream = New FileStream("oneByone" +
fileNum.ToString() + ".pdf",FileMode.Create)

'将内存流的内容写到文件流中,创建单页的PDF输出文档
aStream.WriteTo(outStream)

'关闭输出文件流
outStream.Close()

'递增数值变量以得到不同的值
fileNum = fileNum + 1
Next


[Java]

//将PDF文件名存储在变量中供以后使用
String inFile1 = "example1.pdf";

//调用PdfFileEditor类的空构造函数实例化一个PdfFileEditor对象
PdfFileEditor pdfEditor = new PdfFileEditor();
int fileNum = 0;

ByteArrayOutputStream[] outBuffer = pdfEditor.splitToPages(inFile1);
while(fileNum < outBuffer.length){
FileOutputStream outStream = new FileOutputStream(path + fileNum + ".pdf");
outStream.write(outBuffer[fileNum].toByteArray());
outStream.close();
fileNum++;
}

相关文章推荐

易捷服务大全

在线PDF转换工具

Word

在线Word转PDF

http://wordtopdf.yjpdf.com
 
Excel

在线Excel转PDF

http://exceltopdf.yjpdf.com
 
PPT

在线PPT转PDF

http://ppttopdf.yjpdf.com

本类最新文章

本类本月热门

大家在关注…