在整理文件時,將多個同類型文檔合并是實現(xiàn)文檔歸類的有效方法,也便于文檔管理或者文檔傳輸。當然,也可以對一些比較大的文件進行拆分來獲取自己想要的部分文檔??梢匀我獾貙ξ臋n進行合并、拆分無疑為我們了提供極大的便利。那么在C#語言環(huán)境中怎么來實現(xiàn)PDF文檔的和被拆分呢?下面將介紹具體的代碼操作方法。
所需工具:Free Spire.PDF for .NET、Visual Studio 2013
using System;
using Spire.Pdf;
namespace MergePDF
{
class Program
{
static void Main(string[] args)
{
//創(chuàng)建一組數(shù)組實例,數(shù)組元素為需要合并的多個PDF文檔的路徑
String[] files = new String[] { "test1.pdf", "test2.pdf", "test3.pdf" };
//調用方法MergeFiles()合并文檔
PdfDocumentBase doc = PdfDocument.MergeFiles(files);
//保存文檔
doc.Save("合并.pdf", FileFormat.PDF);
}
}
}
注意: 這里合并的PDF文檔是以新的一頁來合并的文檔,目的不是將多個文檔合并為具有一定邏輯的文檔,而是出于方便文檔管理以及其他操作的目的來合并。
using System;
using Spire.Pdf;
namespace SplitPDF1
{
class Program
{
static void Main(string[] args)
{
//初始化一個PdfDocument類實例,并從文件中加載需要被拆分的PDF文檔
PdfDocument doc = new PdfDocument(@"C:\Users\Administrator\Desktop\test.pdf");
//調用方法Split()方法將PDF文檔按頁拆分保存
String pattern = "拆分{0}.pdf";
doc.Split(pattern);
}
}
}
拆分結果:
拆分的文檔個數(shù)與原文檔頁數(shù)相同。
using Spire.Pdf;
using Spire.Pdf.Graphics;
using System.Drawing;
namespace SplitPDF2
{
class Program
{
static void Main(string[] args)
{
//創(chuàng)建一個PdfDocument類對象,并加載一個現(xiàn)有的PDF文檔
PdfDocument pdf = new PdfDocument();
pdf.LoadFromFile(@"C:\Users\Administrator\Desktop\測試.pdf");
//新建1個PDF文檔
PdfDocument pdf1 = new PdfDocument();
PdfPageBase page;
//將現(xiàn)有的PDF文檔的第1-5頁拆分為一個文檔
for (int i = 0; i < 4; i++)
{
//向新建文檔添加與現(xiàn)有文檔頁面大小一致的頁面
page = pdf1.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));
//為現(xiàn)有文檔的頁面創(chuàng)建模板并將模板畫到新建文檔的頁面上
pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));
}
//保存文檔
pdf1.SaveToFile("1-5.pdf");
//新建第2個PDF文檔
PdfDocument pdf2 = new PdfDocument();
//將現(xiàn)有PDF文檔的第5-10頁拆分為另一個文檔
for (int i = 4; i < 9; i++)
{
//向新建文檔添加與現(xiàn)有文檔頁面大小一致的頁面
page = pdf2.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));
//為現(xiàn)有文檔的頁面創(chuàng)建模板并將模板畫到新建文檔的頁面上
pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));
}
//保存文檔
pdf2.SaveToFile("6-10.pdf");
//新建第3個PDF文檔
PdfDocument pdf3 = new PdfDocument();
//將現(xiàn)有PDF文檔的第10-15頁拆分為另一個文檔
for (int i = 9; i < 14; i++)
{
//向新建文檔添加與現(xiàn)有文檔頁面大小一致的頁面
page = pdf3.Pages.Add(pdf.Pages[i].Size, new PdfMargins(0));
//為現(xiàn)有文檔的頁面創(chuàng)建模板并將模板畫到新建文檔的頁面上
pdf.Pages[i].CreateTemplate().Draw(page, new PointF(0, 0));
}
//保存文檔
pdf2.SaveToFile("11-15.pdf");
}
}
}
以上內容為本篇文章關于合并、拆分PDF文檔的方法講述。如果喜歡,歡迎轉載(轉載請注明出處)
感謝瀏覽。
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。