Διαταραχές
Το έγγραφο δεν κλείνει - Memory Leak
Document Εφαρμογές AutoCloseable.Πάντα χρησιμοποιήστε ένα μπλοκ αποζημιώσεων:
try (Document doc = new Document("input.pdf")) {
// operations
} // doc.close() called automaticallyOutOfMemoryError με μεγάλα αρχεία
Για μεγάλα έγγραφα, επιτρέπεται η μπάffering δίσκου σε 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.");
}
}Ετικέτες: Null Arguments
PdfFileEditor.resizeContents() αγνοεί σιωπηλά μηδενικά επιχειρήματα αντί να ρίχνει. Αν το έγγραφο έκδοσης εμφανιστεί αμετάβλητο μετά από resizeContents(),Ελέγξτε ότι η ContentsResizeParameters Το επιχείρημα δεν είναι μηδέν και το ποσοστό των αξιών του αθροίσματος Ακριβώς 100!.
AESCipher: Λάθος μήκος κλειδιού
Το AES απαιτεί κλειδιά ακριβώς 16, 24, ή 32 bytes (128, 192, ή 256 bit). Περνάς ένα κείμενο λάθος μήκος αποτελέσματα σε εξαίρεση από τον βασικό προμηθευτή κρυπτογράφησης Java.
Η αναφορά δεν είναι ορατή
Εάν προστίθεται μια αναφορά αλλά δεν εμφανίζεται στον θεατή, ελέγξτε:
- Η γραμμή της αναφοράς βρίσκεται μέσα στη σελίδα του
MediaBox page.getAnnotations().add(annotation)Καλέστηκε μετά τη διαμόρφωση όλων των ιδιοτήτων- Το έγγραφο διατηρήθηκε μετά την προσθήκη της αναφοράς