From ce9a4d82c0544e795cd5c7c7a47a1573d8f46641 Mon Sep 17 00:00:00 2001 From: ulrich <not disclosed> Date: Mon, 15 Jan 2018 17:27:13 +0000 Subject: [PATCH] readme ergaenzt --- src/bilder.groovy | 22 ++++++++++++++++++---- 1 files changed, 18 insertions(+), 4 deletions(-) diff --git a/src/bilder.groovy b/src/bilder.groovy index cef6dd3..00ce2a1 100644 --- a/src/bilder.groovy +++ b/src/bilder.groovy @@ -14,13 +14,17 @@ import java.net.FileNameMap; import java.net.URLConnection; import javax.imageio.ImageIO; +import javax.imageio.ImageWriter; +import javax.imageio.ImageWriteParam; +import javax.imageio.stream.FileImageOutputStream; +import javax.imageio.IIOImage; import java.lang.Integer; /* Java-Code zum Verkleinern von Bildern args[0] - Anzahl Pixel an der laengsten Kante - args[1] - qualitaet JPEG, z.B. 75 fuer 75% + args[1] - qualitaet JPEG, z.B. 0.75 fuer 75% des Originals args[2] - Eingangsordner args[3] - Ausgabeordner */ @@ -46,7 +50,7 @@ mediaTracker.waitForID(0); if (!mediaTracker.isErrorAny()) { - int quality = Integer.parseInt(args[1]); + float quality = Float.parseFloat(args[1]); float factor = (float) 0.0; BufferedImage thumbImage; @@ -123,12 +127,22 @@ imgType = "jpg"; } - ImageIO.write(thumbImage, imgType, outFile); + /* + 14.1.2018: Ausgabe um Qualitaetsparameter erweitert + Beginn + */ + ImageWriter writer = ImageIO.getImageWritersByFormatName(imgType).next(); + ImageWriteParam iwp = writer.getDefaultWriteParam(); + iwp.setCompressionMode(ImageWriteParam.MODE_EXPLICIT); + iwp.setCompressionQuality(quality); + writer.setOutput(new FileImageOutputStream(outFile)); + writer.write(null, new IIOImage(thumbImage, null, null), iwp); + writer.dispose(); + /* 14.1.2018 Ende */ } } catch (InterruptedException ex) { System.out.println("Error: " + ex.getLocalizedMessage()); } - } } else { System.out.println("fileList is null or empty"); -- Gitblit v1.9.3