Troubleshooting

Troubleshooting

Document kan niet sluiten — geheugenlek

Document implementeert AutoCloseable. Gebruik altijd een try-with-resources-blok:

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

OutOfMemoryError met grote bestanden

Voor grote documenten schakelt u schijfbuffering in PdfFileEditor in:

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

PdfFileSecurity: Onjuist wachtwoord

decryptFile(password) retourneert false als het opgegeven wachtwoord onjuist is. Controleer altijd de retourwaarde en behandel het foutscenario:

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-argumenten

PdfFileEditor.resizeContents() negeert stilzwijgend null-argumenten in plaats van een uitzondering te gooien. Als het uitvoerdocument ongewijzigd lijkt na resizeContents(), controleer dan of het ContentsResizeParameters-argument niet null is en of de procentwaarden precies 100 optellen.

AESCipher: Verkeerde Sleutellengte

AES vereist sleutels van exact 16, 24 of 32 bytes (128, 192 of 256 bits). Het doorgeven van een sleutel met een onjuiste lengte resulteert in een exceptie van de onderliggende Java crypto-provider.

Annotatie Niet Zichtbaar

Als een annotatie is toegevoegd maar niet verschijnt in de viewer, controleer dan:

  1. Het annotatierectangle bevindt zich binnen de MediaBox van de pagina
  2. page.getAnnotations().add(annotation) werd aangeroepen na het configureren van alle eigenschappen
  3. Het document is opgeslagen na het toevoegen van de annotatie

Zie ook

 Nederlands