تقسیم یک فایل PDF به چندین فایل با استفاده از سی شارپ

در مقاله قبلی، نحوه ادغام چندین فایل PDF را در یک PDF مشاهده کردید. با این حال، ممکن است موردی وجود داشته باشد که لازم باشد یک فایل PDF واحد را به چندین فایل تقسیم کنید. شما می توانید هر صفحه از PDF یا مجموعه ای از صفحات را به چندین PDF تقسیم کنید. در این مقاله، یاد خواهید گرفت که چگونه با چنین سناریوهایی کنار بیایید و یک فایل PDF را با استفاده از سی شارپ تقسیم کنید.

Split PDF C# API - دانلود رایگان

Aspose.PDF for .NET یک API قدرتمند دستکاری فایل PDF است که به شما امکان می دهد اسناد PDF را از داخل برنامه های NET خود ایجاد، ویرایش و پردازش کنید. علاوه بر این، API به شما این امکان را می دهد که یک PDF واحد را با وفاداری بالا به چندین فایل تقسیم کنید. می توانید DLL API را دانلود یا با استفاده از NuGet نصب کنید.

PM> Install-Package Aspose.Pdf

تقسیم یک فایل PDF با استفاده از C#

معیارهای تقسیم PDF می تواند بسته به نیاز شما متفاوت باشد. می توانید سند را بر اساس هر صفحه یا مجموعه ای از صفحات تقسیم کنید. ابتدا، بیایید ببینیم که چگونه هر صفحه از یک فایل PDF را تقسیم کنیم.

  • سند PDF را با استفاده از کلاس Document بارگیری کنید.
  • برای دسترسی به هر صفحه با استفاده از کلاس Page در مجموعه Document.Pages حلقه بزنید.
  • در هر تکرار، یک Document جدید ایجاد کنید، صفحه فعلی را به سند اضافه کنید و با استفاده از روش Document.Save(String) آن را به عنوان یک فایل PDF ذخیره کنید.

نمونه کد زیر نحوه تقسیم یک سند PDF را با استفاده از C# نشان می دهد.

// سند را باز کنید
Document pdfDocument = new Document("merged.pdf");

// برای شمارنده صفحه
int pageCount = 1;

// تمام صفحات را حلقه بزنید
foreach (Aspose.Pdf.Page pdfPage in pdfDocument.Pages)
{
  	// یک سند جدید ایجاد کنید
	Document newDocument = new Document();
  
  	// صفحه را به سند اضافه کنید
	newDocument.Pages.Add(pdfPage);
  
  	// ذخیره به صورت PDF 
	newDocument.Save("page_" + pageCount + "_out" + ".pdf");
	pageCount++;
}

تقسیم صفحات منتخب PDF با استفاده از C#

همچنین می توانید PDF را با تعیین محدوده صفحات تقسیم کنید. به عنوان مثال، می توانید اولین یا آخرین صفحه N، صفحات زوج یا فرد و غیره را تقسیم کنید. برای نمایش، مراحل زیر برای تقسیم صفحات زوج و فرد از PDF آمده است.

  • سند PDF را با استفاده از کلاس Document بارگیری کنید.
  • صفحاتی را دریافت کنید که باید به آرایه Page[] تقسیم شوند.
  • یک Document جدید ایجاد کنید و صفحاتی را با استفاده از روش [Document.Pages.Add(Page[]]]13 به آن اضافه کنید.
  • فایل PDF را با استفاده از روش Document.Save(String) ذخیره کنید.

نمونه کد زیر نحوه جدا کردن مجموعه ای از صفحات از PDF را نشان می دهد.

// سند را باز کنید
Document pdfDocument = new Document("merged.pdf"); 

// فقط صفحات زوج را انتخاب کنید
Aspose.Pdf.Page[] evenPages = pdfDocument.Pages.Where(x => x.Number % 2 == 0).ToArray();

// فقط صفحات فرد را انتخاب کنید
Aspose.Pdf.Page[] oddPages = pdfDocument.Pages.Where(x => x.Number % 2 != 0).ToArray();

// صفحات زوج را به صورت PDF ذخیره کنید
Document newDocument = new Document();
newDocument.Pages.Add(evenPages);
newDocument.Save("split_even_Pages.pdf");

// صفحات فرد را به صورت PDF ذخیره کنید
newDocument = new Document();
newDocument.Pages.Add(oddPages);
newDocument.Save("split_odd_Pages.pdf");

نتیجه

در این مقاله نحوه تقسیم فایل های PDF با استفاده از سی شارپ را یاد گرفتید. نمونه‌های کد نشان می‌دهند که چگونه هر صفحه یا مجموعه‌ای از صفحات را در یک PDF برای جدا کردن فایل‌ها تقسیم کنیم. می‌توانید با استفاده از مستندات اطلاعات بیشتری در مورد NET PDF API داشته باشید.

همچنین ببینید