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

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

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

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

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

void MovePage()
{
    // افتح المستند
    String _dataDir("C:\\Samples\\");
    String srcFileName("<enter file name>");
    String dstFileName("<enter file name>");

    auto srcDocument = MakeObject<Document>(_dataDir + srcFileName);
    auto dstDocument = MakeObject<Document>();

    auto page = srcDocument->get_Pages()->idx_get(2);
    dstDocument->get_Pages()->Add(page);
    // احفظ ملف الإخراج
    dstDocument->Save(srcFileName);
    srcDocument->get_Pages()->Delete(2);
    srcDocument->Save(dstFileName);
}

نقل مجموعة من الصفحات من وثيقة PDF إلى أخرى

  1. أنشئ كائن فئة Document مع ملف PDF المصدر.
  2. حدد مصفوفة بأرقام الصفحات التي سيتم نقلها.
  3. ترجم المستند إلى اللغة العربية كما يلي:

قم بتشغيل حلقة عبر المصفوفة:

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

يظهر لك مقطع الشفرة التالي كيفية إدراج صفحة فارغة في نهاية ملف PDF.

void MoveBunchPages()
{
    // افتح المستند
    String _dataDir("C:\\Samples\\");
    String srcFileName("<enter file name>");
    String dstFileName("<enter file name>");

    auto srcDocument = MakeObject<Document>(_dataDir + srcFileName);
    auto dstDocument = MakeObject<Document>();


    auto pages = MakeArray<int>({ 1,3 });

    for (auto pageIndex : pages)
    {
        auto page = srcDocument->get_Pages()->idx_get(pageIndex);
        dstDocument->get_Pages()->Add(page);
    }
    // احفظ الملفات الناتجة
    dstDocument->Save(srcFileName);
    srcDocument->get_Pages()->Delete();
    srcDocument->Save(dstFileName);
}

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

  1. قم بإنشاء كائن فئة Document مع ملف PDF المصدر.
  2. احصل على الصفحة من مجموعة PageCollection.
  3. أضف الصفحة إلى الموقع الجديد (على سبيل المثال إلى النهاية).
  4. احذف الصفحة في الموقع السابق.
  5. احفظ ملف الـ PDF الناتج باستخدام طريقة Save.
void MovePagesInOnePDF()
{
    // Open document
    String _dataDir("C:\\Samples\\");
    String srcFileName("<enter file name>");
    String dstFileName("<enter file name>");

    auto srcDocument = MakeObject<Document>(_dataDir + srcFileName);
    auto dstDocument = MakeObject<Document>();

    auto page = srcDocument->get_Pages()->idx_get(2);
    srcDocument->get_Pages()->Add(page);
    srcDocument->get_Pages()->Delete(2);

    // Save output file
    srcDocument->Save(dstFileName);
}