Resolución de problemas

Resolución de problemas

El documento no se cierra - Memory Leak

Document implantaciones AutoCloseable.Siempre use un bloque de recursos try-with:

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

OutOfMemoryError con archivos grandes

Para los grandes documentos, permite la buferación de discos en el PdfFileEditor:

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

PdfFileSecurity: contraseña incorrecta

decryptFile(password) Retorno false Si la contraseña que se proporciona es incorrecta. Siempre comproba el valor de retorno y gestiona el caso de fracaso:

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: No Argumentos

PdfFileEditor.resizeContents() ignora silenciosamente los argumentos cero en lugar de lanzar. Si el documento de salida aparece sin cambios después de resizeContents(),Verificar que el ContentsResizeParameters El argumento no es nulo y que el porcentaje de valores suman A los exactos 100.

AESCipher: la longitud de la clave equivocada

AES requiere de las claves de exactamente 16, 24, o 32 bytes (128, 192, o 256 bits). pasar una clave de longitud incorrecta resultados en una excepción del proveedor de criptografía Java subyacente.

Anunciación no visible

Si se añade una anotación pero no aparece en el espectador, verá:

  1. El anotamiento está en el rectángulo de la página MediaBox
  2. page.getAnnotations().add(annotation) Se ha llamado después de configurar todas las propiedades
  3. El documento fue guardado después de añadir la anotación.

Ver también

 Español