حل المشاكل

فشل إغلاق المستند تسرب الذاكرة

Document الأدوات AutoCloseable.دائماً استخدم محاولة مع الموارد:

try (Document doc = new Document("input.pdf")) {
    // operations
} // doc.close() called automatically

خطأ خارج الذاكرة مع ملفات كبيرة

للوثائق الكبيرة، قم بتفعيل تخزين مخزون الأقراص في PdfFileEditor:

PdfFileEditor editor = new PdfFileEditor();
editor.setUseDiskBuffer(true);
editor.concatenate(inputFiles, "output.pdf");

PdfFileSecurity: كلمة مرور غير صحيحة

decryptFile(password) العوائد false إذا كان كلمة المرور المقدمة غير صحيحة. دائماً تحقق من القيمة العائدة واهتم بموقف الفشل:

try (PdfFileSecurity security = new PdfFileSecurity()) {
    security.setInputFile("encrypted.pdf");
    security.setOutputFile("decrypted.pdf");
    boolean ok = security.decryptFile("ownerPassword");
    if (!ok) {
        System.err.println("Decryption failed — verify the owner password.");
    }
}

PdfFileEditor: حجج فارغة

PdfFileEditor.resizeContents() يتجاهل بصمت الحجج الصافية بدلاً من الرمي. إذا كانت الوثيقة الصادرة تبدو غير متغيرة بعد: resizeContents(),، التحقق من أن المعلومات التي تم إرسالها إلى ContentsResizeParameters الحجة ليست صفرية وأن قيم النسبة المئوية هي مجموعها. إلى 100 بالضبط.

AESCipher: طول مفتاح خاطئ

يتطلب AES مفاتيح ذات 16، 24 أو 32 بايت (128, 192 أو 256 بت) بالضبط. إن تمرير مفتاح بطول غير صحيح يؤدي إلى استثناء من مزود تشفير Java الأساسي.

لا يمكن رؤية الملاحظة

إذا تم إضافة ملخص ولكن لا يظهر في المشاهد، تحقق من:

  1. مستطيل التعليق داخل الصفحة MediaBox
  2. page.getAnnotations().add(annotation) تم استدعاء بعد تكوين كل الخصائص
  3. تم حفظ المستند بعد إضافة التعليقات

انظر أيضا

 العربية