Troubleshooting
เอกสารไม่สามารถปิดได้ ความจํารั่วไหล
Document เครื่องมือ AutoCloseable.ใช้บล็อกทดลองทรัพยากรเสมอ:
try (Document doc = new Document("input.pdf")) {
// operations
} // doc.close() called automaticallyOutOfMemory 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 ที่อยู่เบื้องหลังนั้นยกเว้น.
การแสดงความไม่เห็น
หากเพิ่มคําบรรยาย แต่ไม่ปรากฏในตัวดู, ตรวจสอบ:
- จุดสี่เหลี่ยมที่เขียนคําบรรยายอยู่ภายในหน้าของ
MediaBox page.getAnnotations().add(annotation)ได้ถูกเรียกหลังจากการตั้งค่า Properties ทั้งหมด- เอกสารถูกบันทึกหลังจากการเพิ่มคําบรรยาย