Troubleshooting

เอกสารไม่สามารถปิดได้ ความจํารั่วไหล

Document เครื่องมือ AutoCloseable.ใช้บล็อกทดลองทรัพยากรเสมอ:

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

OutOfMemory Error กับไฟล์ขนาดใหญ่

สําหรับเอกสารขนาดใหญ่ เปิดช่องพัฟเฟอร์ในไดสค์ 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: การโต้แย้ง null

PdfFileEditor.resizeContents() ไม่ยอมรับข้อโต้แย้งที่ไม่มีค่า แทนที่จะโยน. หากเอกสารการออกปรากฏไม่เปลี่ยนแปลงหลังจากที่ resizeContents(), ยืนยันว่าการ ContentsResizeParameters อาร์กูเมนต์ไม่ใช่ null และค่าเปอร์เซ็นติคคือการรวม ถึง 100 อย่างแน่นอน.

AESCipher: ความยาวคีย์ผิด

AES จําเป็นต้องมีคีย์ที่มีความยาว 16, 24 หรือ 32 ไบท (128, 192, หรือ 256 บิต) โดยการส่งคีส์ที่มีความยืดไม่ถูกต้องจะทําให้ผู้ให้บริการแครปโต Java ที่อยู่เบื้องหลังนั้นยกเว้น.

การแสดงความไม่เห็น

หากเพิ่มคําบรรยาย แต่ไม่ปรากฏในตัวดู, ตรวจสอบ:

  1. จุดสี่เหลี่ยมที่เขียนคําบรรยายอยู่ภายในหน้าของ MediaBox
  2. page.getAnnotations().add(annotation) ได้ถูกเรียกหลังจากการตั้งค่า Properties ทั้งหมด
  3. เอกสารถูกบันทึกหลังจากการเพิ่มคําบรรยาย

See Also

 ภาษาไทย