تحويل ملف PDF
تحويل صفحات PDF إلى تنسيقات صور مختلفة (Facades)
من أجل تحويل صفحات PDF إلى تنسيقات صور مختلفة، تحتاج إلى إنشاء كائن PdfConverter وفتح ملف PDF باستخدام طريقة bindPdf.
بعد ذلك، تحتاج إلى استدعاء طريقة doConvert لمهام التهيئة. ثم يمكنك التنقل بين جميع الصفحات باستخدام طريقتي hasNextImage وgetNextImage. تتيح لك طريقة getNextImage إنشاء صورة لصفحة معينة. تحتاج أيضًا إلى تمرير ImageType إلى هذه الطريقة من أجل إنشاء صورة من نوع معين مثل JPEG أو GIF أو PNG إلخ.
وأخيرًا، قم باستدعاء طريقة الإغلاق لفئة PdfConverter.
يُظهر لك مقتطف الشيفرة التالي كيفية تحويل صفحات PDF إلى صور.
public static void ConvertPdfPagesToImages01() {
// إنشاء كائن PdfConverter
PdfConverter converter = new PdfConverter();
// ربط ملف PDF المدخل
converter.bindPdf(_dataDir + "Sample-Document-01.pdf");
// بدء عملية التحويل
converter.doConvert();
int count=0;
// التحقق مما إذا كانت الصفحات موجودة ثم التحويل إلى صورة واحدة تلو الأخرى
while (converter.hasNextImage())
converter.getNextImage(_dataDir + "page" + count + "_out.jpg", ImageType.getJpeg());
// إغلاق كائن PdfConverter
converter.close();
}
في مقتطف الشيفرة التالي، سنوضح كيف يمكنك تغيير بعض المعلمات. باستخدام setCoordinateType نحدد الإطار CropBox. أيضًا، يمكننا تغيير setResolution بتحديد عدد النقاط لكل بوصة. التالي هو setFormPresentationMode - وضع عرض النموذج. ثم نحدد setStartPage الذي يحدد رقم الصفحة لبداية التحويل. يمكننا أيضًا تحديد الصفحة الأخيرة بتعيين نطاق.
public static void ConvertPdfPagesToImages02()
{
// إنشاء كائن PdfConverter
PdfConverter converter = new PdfConverter();
// ربط ملف pdf المدخل
converter.bindPdf(_dataDir + "sample.pdf");
// تهيئة عملية التحويل
converter.doConvert();
converter.setCoordinateType(PageCoordinateType.CropBox);
converter.setResolution (new Resolution(600));
converter.setFormPresentationMode(FormPresentationMode.Editor);
converter.setStartPage(2);
int count=0;
// التحقق من وجود الصفحات ثم التحويل إلى صورة واحدة تلو الأخرى
while (converter.hasNextImage())
converter.getNextImage(_dataDir + "page" + count + "_out.jpg", ImageType.getJpeg());
// إغلاق كائن PdfConverter
converter.close();
}