نقل صفحات PDF برمجياً C#

نقل صفحة من مستند PDF إلى آخر

تشرح هذه الموضوع كيفية نقل صفحة من مستند PDF إلى نهاية مستند آخر باستخدام C#.

تعمل مقتطفات الكود التالية أيضًا مع مكتبة Aspose.PDF.Drawing.

لنقل صفحة يجب علينا:

  1. إنشاء كائن من فئة Document مع ملف PDF المصدر.
  2. إنشاء كائن من فئة Document مع ملف PDF الوجهة.
  3. الحصول على الصفحة من مجموعة PageCollection.
  4. إضافة الصفحة إلى المستند الوجهة.
  5. حفظ ملف PDF الناتج باستخدام طريقة Save.
  6. حذف الصفحة في المستند المصدر.
  7. حفظ ملف PDF المصدر باستخدام طريقة Save.

تظهر مقتطفات الكود التالية كيفية نقل صفحة واحدة.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageFromOnePdfDocumentToAnother()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF documents
    using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingPageInput.pdf"))
    {
        using (var dstDocument = new Aspose.Pdf.Document())
        {
            var page = srcDocument.Pages[2];
            dstDocument.Pages.Add(page);
            // Save PDF document
            dstDocument.Save(dataDir + "MovingPage_out.pdf");
            srcDocument.Pages.Delete(2);
            // Save PDF document
            srcDocument.Save(dataDir + "MovingPageInput_out.pdf");
        }
    }
}

نقل مجموعة من الصفحات من مستند PDF إلى آخر

  1. إنشاء كائن من فئة Document مع ملف PDF المصدر.
  2. إنشاء كائن من فئة Document مع ملف PDF الوجهة.
  3. تعريف مصفوفة بأرقام الصفحات التي سيتم نقلها.
  4. تشغيل حلقة عبر المصفوفة:
    1. الحصول على الصفحة من مجموعة PageCollection.
    2. إضافة الصفحة إلى المستند الوجهة.
  5. حفظ ملف PDF الناتج باستخدام طريقة Save.
  6. حذف الصفحة في المستند المصدر باستخدام المصفوفة.
  7. حفظ ملف PDF المصدر باستخدام طريقة Save.

تظهر مقتطفات الكود التالية كيفية نقل مجموعة من الصفحات من مستند PDF إلى آخر.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingBunchOfPagesFromOnePdfDocumentToAnother()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF documents
    using (var srcDocument = new Aspose.Pdf.Document(dataDir + "MovingBunchOfPagesInput.pdf"))
    {
        using (var dstDocument = new Aspose.Pdf.Document())
        {
            var pages = new[] { 1, 3 };
            foreach (int pageIndex in pages)
            {
                var page = srcDocument.Pages[pageIndex];
                dstDocument.Pages.Add(page);
            }
            // Save PDF document
            dstDocument.Save(dataDir + "MovingBunchOfPages_out.pdf");
            srcDocument.Pages.Delete(pages);
            // Save PDF document
            srcDocument.Save(dataDir + "MovingBunchOfPagesInput_out.pdf";
        }
    }
}

نقل صفحة إلى موقع جديد في مستند PDF الحالي

  1. إنشاء كائن من فئة Document مع ملف PDF المصدر.
  2. الحصول على الصفحة من مجموعة PageCollection.
  3. إضافة الصفحة إلى الموقع الجديد (على سبيل المثال إلى النهاية).
  4. حذف الصفحة في الموقع السابق.
  5. حفظ ملف PDF الناتج باستخدام طريقة Save.
// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void MovingAPageInNewLocationInTheCurrentPdfDocument()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_Pages();

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocumentInput.pdf"))
    {
        var page = document.Pages[2];
        document.Pages.Add(page);
        document.Pages.Delete(2);
        // Save PDF document
        document.Save(dataDir + "MovingAPageInNewLocationInTheCurrentPdfDocument_out.pdf");
    }
}