تقسيم ملفات PDF إلى ملفات متعددة بجافا

يعد PDF من أشهر تنسيقات الملفات التي تدعم العناصر النصية والرسومية والعديد من العناصر الأخرى. أحد أسباب شعبيتها هو قابليتها للنقل. في بعض الحالات ، قد تحتاج إلى تقسيم ملف PDF كبير إلى عدة ملفات. لمعالجة هذا برمجيًا ، تناقش هذه المقالة طرقًا مختلفة لكيفية تقسيم ملفات PDF في Java.

Java API لتقسيم ملفات PDF

GroupDocs.Merger يوفر الحل لدمج وتقسيم الملفات للعديد من تنسيقات الملفات المختلفة. سنستخدم Java API لتقسيم ملفات PDF بطرق مختلفة. قم بتنزيل ملف JAR من قسم التنزيلات ، أو استخدم أحدث تكوينات المستودع والتبعية Maven داخل تطبيقات Java الخاصة بك.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-merger</artifactId>
        <version>21.9</version> 
</dependency>

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

توضح الخطوات التالية كيف يمكنك تقسيم ملف PDF إلى ملفات متعددة الصفحات:

  • قم بتحميل ملف PDF باستخدام فئة دمج.
  • حدد تنسيق ملف (ملفات) الإخراج.
  • حدد فترات الصفحة باستخدام SplitOptions.
  • قم بتقسيم ملف PDF المحمل وفقًا لفاصل زمني محدد باستخدام طريقة split ().

يوضح نموذج التعليمات البرمجية التالي كيفية تقسيم ملفات PDF إلى ملفات متعددة الصفحات في Java.

/*
 * قم بتقسيم ملفات PDF إلى ملفات صفحات متعددة في Java
 */
// قم بتحميل ملف PDF
Merger merger = new Merger("path/document.pdf"); 

// تحديد تنسيق ملف (ملفات) الإخراج
String filePathOut = "path/splitPDF_{0}.{1}";

// تحديد فترات التقسيم ووضع الانقسام
SplitOptions splitOptions = new SplitOptions(filePathOut,  new int[] { 3, 6, 8 }, SplitMode.Interval);

// تقسيم PDF وفقًا لفترات زمنية معينة
merger.split(splitOptions);

قم بتقسيم ملف PDF إلى عدة ملفات أحادية الصفحة في Java

توضح الخطوات التالية كيف يمكنك تقسيم ملف PDF لاستخراج الصفحات إلى ملفات متعددة ذات صفحة واحدة:

  • قم بتحميل ملف PDF باستخدام فئة دمج.
  • حدد تنسيق ملف (ملفات) الإخراج.
  • حدد أرقام الصفحات بدقة باستخدام SplitOptions.
  • قم بتقسيم ملف PDF المحمل وفقًا لصفحات محددة باستخدام طريقة Split ().

يوضح نموذج التعليمات البرمجية التالي كيفية تقسيم ملفات PDF إلى ملفات متعددة ذات صفحة واحدة في Java.

/*
 * قم بتقسيم ملف PDF إلى ملفات صفحة واحدة بجافا
 */
// قم بتحميل ملف PDF
Merger merger = new Merger("path/document.pdf");

// تحديد تنسيق ملف (ملفات) الإخراج
String filePathOut = "path/splitPDF_{0}.{1}"; 

// تحديد الصفحات لاستخراجها كمستند من صفحة واحدة
SplitOptions splitOptions = new SplitOptions(filePathOut, new int[] { 3, 6, 8 });

// تقسيم PDF وفقًا لخيارات التقسيم
merger.split(splitOptions);

استخراج الصفحات من ملفات PDF حسب النطاق في Java

ترشد الخطوات التالية كيفية استخراج الصفحات من PDF بالتقسيم وفقًا للنطاق المحدد:

  • قم بتحميل ملف PDF باستخدام فئة دمج.
  • حدد تنسيق ملف (ملفات) الإخراج.
  • قدم نطاق الصفحات باستخدام SplitOptions.
  • استخدم طريقة split () لتقسيم ملف PDF المحمل وفقًا للنطاق المحدد.

يوضح مقتطف الشفرة التالي كيفية تقسيم PDF واستخراج الصفحات من خلال توفير النطاق في Java.

/*
 * قم بتقسيم ملف PDF عن طريق تحديد النطاق إلى ملفات صفحة واحدة في Java
 */
// قم بتحميل ملف PDF
Merger merger = new Merger("path/document.pdf"); 

// تحديد تنسيق ملف (ملفات) الإخراج
String filePathOut = "path/splitPDF_{0}.{1}";

// حدد النطاق لاستخراجه كمستندات صفحة واحدة
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7);

// تقسيم PDF وفقًا لخيارات التقسيم
merger.split(splitOptions);

استخراج الصفحات من ملفات PDF باستخدام مرشح زوجي / فردي في Java

توجه الخطوات التالية كيفية استخراج الصفحات الزوجية / الفردية في النطاق المحدد من ملف PDF عن طريق التقسيم:

  • قم بتحميل ملف PDF باستخدام فئة دمج.
  • حدد تنسيق ملف (ملفات) الإخراج.
  • قدم نطاق الصفحات باستخدام SplitOptions.
  • قم بتطبيق عامل التصفية الزوجي أو الفردي أو كل الصفحات باستخدام RangeMode.
  • استخدم طريقة split () لتقسيم ملف PDF المحمل وفقًا للمرشح المحدد.

يوضح مقتطف الشفرة التالي كيفية استخراج جميع الصفحات الفردية / الزوجية في النطاق المحدد لملف PDF باستخدام Java.

/*
 * قم بتقسيم ملف PDF عن طريق تحديد النطاق والتصفية (الصفحات الزوجية / الفردية) إلى ملفات صفحة واحدة في Java
 */
// قم بتحميل ملف PDF
Merger merger = new Merger("path/document.pdf"); 

// تحديد تنسيق ملف (ملفات) الإخراج
String filePathOut = "path/splitPDF_{0}.{1}";

// حدد Range & Filter لاستخراج جميع صفحات ODD في النطاق المحدد كمستندات صفحة واحدة
SplitOptions splitOptions = new SplitOptions(filePathOut, 3, 7, (Integer)RangeMode.OddPages);

// تقسيم PDF وفقًا لخيارات التقسيم
merger.split(splitOptions);

ملخص تغيير الكود

الشيء الوحيد الذي يختلف في السيناريوهات أعلاه هو طريقة إنشاء SplitOptions. يمكنك استخدام التكوينات التالية وفقًا لمتطلباتك في التعليمات البرمجية الخاصة بك.

  • بالنسبة لملفات الصفحات المتعددة - استخدم الفاصل الزمني: \ [1،2 ] ، \ [3،4،5 ] ، \ [6،7 ] ، \ [8،9،10 ].
new SplitOptions(outputFile,  new int[] { 3, 6, 8 }, SplitMode.Interval)
  • الصفحات الفردية: \ [3 ] ، \ [6 ] ، \ [8 ]
new SplitOptions(outputFile, new int[] { 3, 6, 8 });
  • لاستخراج الصفحات في النطاق: \ [3 ] ، \ [4 ] ، \ [5 ]
new SplitOptions(outputFile, 3, 5);
  • النطاق بالفلتر: \ [3 ] ، \ [5 ] ، \ [7 ]
new SplitOptions(outputFile, 3, 7, (Integer)RangeMode.OddPages);

احصل على ترخيص API مجاني

يمكنك الحصول على ترخيص مؤقت مجاني من أجل استخدام واجهة برمجة التطبيقات بدون قيود التقييم.

استنتاج

باختصار ، لقد تعلمت طرقًا مختلفة لتقسيم ملفات PDF في Java. أولاً ، قمنا بتقسيم ملف PDF إلى مستندات متعددة الصفحات وكذلك في عدة مستندات من صفحة واحدة. ثم استخرجنا واحدًا تلو الآخر جميع الصفحات ، والصفحات الزوجية / الفردية من ملف PDF ضمن النطاق المحدد. الآن يجب أن تكون واثقًا من إنشاء تطبيق Java الخاص بتقسيم ملفات PDF باستخدام GroupDocs.Merger API.

لمعرفة المزيد حول API ، قم بزيارة الوثائق. للاستفسارات ، اتصل بنا عبر المنتدى.

أنظر أيضا