Las imágenes se utilizan ampliamente para diferentes tipos de representaciones y demostraciones en archivos PDF. En este artículo, aprenderá cómo manipular imágenes en archivos PDF mediante programación. En particular, el artículo cubrirá cómo agregar, extraer, eliminar o reemplazar imágenes en archivos PDF usando Java.
- API de Java para agregar y manipular imágenes en PDF
- Agregar una imagen en un PDF usando Java
- Extrae una imagen de un PDF usando Java
- Eliminar imágenes de un PDF usando Java
- Reemplazar una imagen en un PDF usando Java
- Obtenga una licencia gratis
API de Java para agregar y manipular imágenes en PDF - Descarga gratuita
Aspose.PDF for Java es una potente API que le proporciona una amplia gama de funciones de manipulación de PDF. La API le permite trabajar con texto, anotaciones o imágenes en los archivos PDF sin problemas. Puede descargar el JAR de la API o instalarlo usando las siguientes configuraciones de Maven.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-pdf</artifactId>
<version>21.2</version>
</dependency>
Agregar imagen a archivo PDF en Java
Los siguientes son los pasos para agregar una imagen en el archivo PDF en Java.
- Primero, cree una instancia de la clase Document para cargar el documento PDF.
- Obtenga la Página a la que desea agregar una imagen usando el método Document.getPages().get_Item(int).
- Cargue el archivo de imagen en un objeto FileInputStream.
- Agrega la imagen a los recursos de la página usando el método Page.getResources().getImages().add(FileInputStream).
- Utilice operadores para colocar la imagen en la página:
- GSave operador para guardar el estado gráfico actual.
- ConcatenateMatrix para especificar dónde se colocará la imagen.
- Do operador para dibujar la imagen en la página.
- Operador GRestore para guardar el estado gráfico actualizado.
- Finalmente, guarde el archivo PDF actualizado usando el método Document.save(string).
El siguiente ejemplo de código muestra cómo agregar una imagen a un archivo PDF en Java.
// abrir un documento
Document pdfDocument1 = new Document("input.pdf");
// Establecer coordenadas
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 200;
int upperRightY = 200;
// Obtenga la página a la que desea agregar la imagen
Page page = pdfDocument1.getPages().get_Item(1);
// Cargar imagen en flujo
java.io.FileInputStream imageStream = new java.io.FileInputStream(new java.io.File("input_image1.jpg"));
// Agregue una imagen a la colección Imágenes de los recursos de la página.
page.getResources().getImages().add(imageStream);
// Usando el operador GSave: este operador guarda el estado actual de los gráficos
page.getContents().add(new Operator.GSave());
// Crear objetos Rectángulo y Matriz
Rectangle rectangle = new Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
Matrix matrix = new Matrix(new double[] { rectangle.getURX() - rectangle.getLLX(), 0, 0, rectangle.getURY() - rectangle.getLLY(), rectangle.getLLX(), rectangle.getLLY() });
// Usando el operador ConcatenateMatrix (matriz concatenada): define cómo se debe colocar la imagen
page.getContents().add(new Operator.ConcatenateMatrix(matrix));
XImage ximage = page.getResources().getImages().get_Item(page.getResources().getImages().size());
// Usando el operador Do: este operador dibuja la imagen
page.getContents().add(new Operator.Do(ximage.getName()));
// Usando el operador GRestore: este operador restaura el estado de los gráficos
page.getContents().add(new Operator.GRestore());
// Guardar el nuevo PDF
pdfDocument1.save("Updated_document.pdf");
// Cerrar secuencia de imágenes
imageStream.close();
Extraer imágenes de un archivo PDF usando Java
Los siguientes son los pasos para extraer imágenes de un documento PDF utilizando Java.
- Cree una instancia de la clase Document para cargar el documento PDF.
- Extraiga la imagen deseada en el objeto XImage usando el método Document.getPages().get_Item(int).getResources().getImages().get_Item(int).
- También puede recorrer la colección de imágenes para extraer y guardar todas las imágenes.
- Finalmente, guarde la imagen extraída como un archivo usando OutputStream.
El siguiente ejemplo de código muestra cómo extraer imágenes de archivos PDF usando Java.
// abrir un documento
Document pdfDocument = new Document("input.pdf");
// Extraer una imagen en particular
XImage xImage = pdfDocument.getPages().get_Item(1).getResources().getImages().get_Item(1);
// Crear objeto de flujo para guardar la imagen de salida
java.io.OutputStream output = new java.io.FileOutputStream("output.jpg");
// Guardar la imagen de salida
xImage.save(output);
// Cerrar transmisión
output.close();
Eliminar imágenes de un archivo PDF usando Java
Los siguientes son los pasos para eliminar una imagen de un archivo PDF usando Java.
- Cargue el archivo PDF en un objeto Document.
- Elimine la(s) imagen(es) deseada(s) usando uno de los siguientes métodos.
- Eliminar() to delete images from collection.
- eliminar (índice int) to delete an image from the collection by index.
- eliminar (nombre de la cadena) to delete an image from the collection by name.
- Finalmente, guarde el archivo PDF actualizado usando el método Document.save(string).
El siguiente ejemplo de código muestra cómo eliminar una imagen en PDF usando Java.
// abrir un documento
Document pdfDocument = new Document("input.pdf");
// Eliminar una imagen en particular
pdfDocument.getPages().get_Item(1).getResources().getImages().delete(1);
// Guarde el archivo PDF actualizado
pdfDocument.save("output.pdf");
Reemplazar una imagen en un archivo PDF usando Java
Los siguientes son los pasos para reemplazar una imagen en un archivo PDF usando Java.
- Cargue el archivo PDF en un objeto Document.
- Cargue la nueva imagen en el objeto FileInputStream.
- Use el método Document.getPages().get_Item(int).getResources().getImages().replace(int, FileInputStream) para reemplazar la imagen especificando el índice.
- Finalmente, guarde el archivo PDF actualizado usando el método Document.save(string).
El siguiente ejemplo de código muestra cómo reemplazar una imagen en PDF usando Java.
// abrir un documento
Document pdfDocument = new Document("input.pdf");
// Reemplazar una imagen en particular
pdfDocument.getPages().get_Item(1).getResources().getImages().replace(1, new java.io.FileInputStream(new java.io.File("apose.png")));
// Guarde el archivo PDF actualizado
pdfDocument.save("output.pdf");
API de Java para agregar imágenes en PDF: obtenga una licencia de API gratuita
Puede probar Aspose.PDF for Java de forma gratuita obteniendo una licencia temporal.
Conclusión
En este artículo, ha aprendido a manipular imágenes en archivos PDF usando Java. La guía paso a paso y los ejemplos de código muestran cómo extraer, agregar, eliminar y reemplazar imágenes en un archivo PDF. Puede explorar otras características de Aspose.PDF for Java usando documentación. En caso de cualquier consulta, puede contactarnos a través de nuestro foro.