Este artículo describe el método para implementar capturas de pantalla de archivos PDF en Java. Compártelo para su referencia, como sigue:
En un sitio web que construí recientemente, existe el requisito de cargar un archivo PDF, mostrar la portada de PDF y luego hacer clic en la portada para leer en línea. Aquí, PDFrender se usa para tomar capturas de pantalla de PDF.
public static boolean createScreensHoot (fuente de cadena, string target) {archivo archivo = nuevo archivo (fuente); if (! file.exists ()) {system.err.println ("ruta [" + fuente + "] El archivo PDF correspondiente no existe!"); devolver falso; } try {randomAccessFile RAF = new RandomAccessFile (archivo, "r"); Canal fileChannel = raf.getChannel (); Bytebuffer buf = channel.map (filechannel.mapmode.read_only, 0, canal.size ()); Pdffile pdffile = new Pdffile (BUF); int num = pdffile.getNumpages (); for (int i = 1; i <num; i ++) {pdfpage página = pdffile.getPage (1); // Obtenga el ancho y la altura para el DOC en el zoom rectángulo predeterminado rect = new Rectangle (0, 0, (int) page.getBbox () .getWidth (), (int) page.getBbox (). getheight ()); // Generar la imagen Image img = page.getImage (rect.width, rect.height, // width & rect, // clip rect null, // null para imageObserver verdadero, // llenar el fondo con el bloque blanco // hasta que el dibujo está listo); TagedImage Tag = new BufferedImage (rect.width, rect.height, bufferedImage.type_int_rgb); tag.getGraphics (). DrawImage (img, 0, 0, rect.width, rect.Height, null); FileOutputStream out = new FileOutputStream (Target+I+"JPG"); JpegimageEncoder coder = jpegcodec.createjpegencoder (out); encoder.encode (etiqueta); // JPEG codificando.close (); } return verdadero; } catch (Exception e) {E.PrintStackTrace (); devolver verdadero; }Además, si necesita mostrar el PDF en línea, debe establecer el encabezado de respuesta
respuesta.setContentType ("Aplicación/PDF");Anexo: PDFrender.jar Haga clic aquí para descargar este sitio .
Para obtener más contenido relacionado con Java, los lectores interesados en este sitio pueden ver los temas: "Resumen de habilidades de operación de imagen Java", "Resumen de habilidades de operación de fecha y hora de Java", "Resumen de las habilidades de nodo de operación de Java" "," Resumen de las habilidades de operación de archivos y directorio de Java "y" Tutoriales de estructura de datos de Java y algoritmo ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".". ".
Espero que este artículo sea útil para la programación Java de todos.