Desactivar la Compresión de Archivos al Añadir como Recursos Integrados

Contents
[ ]

La clase FileSpecification permite a los desarrolladores añadir archivos adjuntos a documentos PDF. Por defecto, los archivos adjuntos están comprimidos. Hemos actualizado la API para permitir a los desarrolladores desactivar la compresión al añadir archivos como recursos integrados. Esto brinda a los desarrolladores más control sobre cómo se procesan los archivos.

Para permitir a los desarrolladores controlar la compresión de archivos, se ha añadido el método setEncoding(..) a la clase FileSpecification. Esta propiedad determina qué codificación se utilizará para la compresión de archivos. El método acepta un valor del enumerador FileEncoding. Los valores posibles son FileEncoding.None y FileEncoding.Zip.

Si la codificación está configurada como FileEncoding.None, entonces el archivo adjunto no se comprime. La codificación predeterminada es FileEncoding.Zip.

El siguiente fragmento de código muestra cómo agregar un archivo adjunto a un documento PDF.

    public static void DisableFilesCompressionWhenAddingAsEmbeddedResources() throws IOException{
  // obtener referencia del archivo fuente/entrada
  java.nio.file.Path path = java.nio.file.Paths.get(_dataDir+"input.pdf");
  // leer todos los contenidos del archivo fuente en ByteArray
  byte[] data = java.nio.file.Files.readAllBytes(path);
  // crear una instancia del objeto Stream a partir del contenido de ByteArray
  InputStream is = new ByteArrayInputStream(data);
  // Instanciar objeto Document a partir de la instancia de stream
  Document pdfDocument = new Document(is);
  // configurar nuevo archivo para ser agregado como adjunto
  FileSpecification fileSpecification = new FileSpecification("test.txt", "Archivo de texto de muestra");
  // Especificar la propiedad Encoding configurándola a FileEncoding.None
  fileSpecification.setEncoding(FileEncoding.None);
  // agregar adjunto a la colección de adjuntos del documento
  pdfDocument.getEmbeddedFiles().add(fileSpecification);
  // guardar nuevo resultado
  pdfDocument.save("output.pdf");
    }