Generar miniaturas para archivos PDF en C#

Al incrustar los documentos PDF en una aplicación web, es posible que deba generar una miniatura. En otros escenarios, como la creación de un visor de PDF, es posible que deba crear una miniatura para cada página del PDF. En este artículo, le mostraremos cómo generar imágenes en miniatura de páginas PDF en Java. Cubriremos explícitamente cómo crear una miniatura de una página en particular o de todas las páginas en un archivo PDF.

API de Java para generar miniaturas de PDF - Descarga gratuita

Para generar las imágenes en miniatura de los archivos PDF, utilizaremos Aspose.PDF for Java. Es una biblioteca rica en funciones que le permite crear y manipular documentos PDF. La API le permite realizar operaciones de automatización de PDF básicas y avanzadas sin problemas. Puede descargar la API o instalarla usando las siguientes configuraciones de Maven.

Repositorio:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Dependencia:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-pdf</artifactId>
    <version>22.4</version>
</dependency>

Generar una miniatura de un PDF en Java

Por lo general, debe generar una sola imagen en miniatura para un documento PDF. La página de la miniatura podría ser la portada o cualquier otra página de su elección. Los siguientes son los pasos para generar una miniatura de la página deseada de un PDF en Java.

El siguiente ejemplo de código muestra cómo generar una miniatura de un archivo PDF en Java.

// Cargar documento PDF
Document doc = new Document("input.pdf");

int pageIndex = 0;

// Obtener página
Page page = doc.getPages().get_Item(pageIndex);

// Crear secuencia de archivos para la imagen
FileOutputStream imageStream = new FileOutputStream("Thumbnails_" + pageIndex + ".jpg");

// Crear objeto de resolución
Resolution resolution = new Resolution(300);

// Cree una instancia de JpegDevice y configure la altura, el ancho, la resolución y la
// calidad de imagen
JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);

// Convierta una página y guarde la imagen para transmitir
jpegDevice.process(page, imageStream);

// Cerrar transmisión
try {
	imageStream.close();
} catch (IOException e) {
	// TODO Bloque catch generado automáticamente
	e.printStackTrace();
}

Java genera miniaturas de todas las páginas en PDF

Los siguientes son los pasos para generar miniaturas para todas las páginas en PDF en Java.

  • Cargue el archivo PDF utilizando la clase Document.
  • Recorra todas las páginas en PDF usando la colección Document.getPages().
  • En cada iteración, realice las siguientes operaciones:

El siguiente ejemplo de código muestra cómo generar miniaturas para todas las páginas en PDF.

// Cargar documento PDF
Document doc = new Document("input.pdf");

// Bucle a través de las páginas
for (int pageCount = 0; pageCount < doc.getPages().size(); pageCount++) {
	FileOutputStream imageStream = new FileOutputStream("Thumbnails_" + pageCount + ".jpg");

	// Crear objeto de resolución
	Resolution resolution = new Resolution(300);
	JpegDevice jpegDevice = new JpegDevice(45, 59, resolution, 100);

	// Convierta una página en particular y guarde la imagen para transmitir
	jpegDevice.process(doc.getPages().get_Item(pageCount), imageStream);

	// Cerrar transmisión
	try {
		imageStream.close();
	} catch (IOException e) {
		// TODO Bloque catch generado automáticamente
		e.printStackTrace();
	}
}

Obtenga una licencia gratis

Puede obtener una licencia temporal gratuita para usar Aspose.PDF for Java sin limitaciones de evaluación.

Conclusión

En este artículo, ha aprendido a generar miniaturas para archivos PDF en Java. Ha visto cómo generar una miniatura de una página en particular o de todas las páginas de un archivo PDF. Además, puede explorar más sobre la API PDF de Java utilizando la documentación. En caso de que tenga alguna pregunta o consulta, puede contactarnos a través de nuestro foro.

Ver también