commit
						08256c9fb7
					
				| @ -60,6 +60,27 @@ | ||||
|             <artifactId>tesseract-platform</artifactId> | ||||
|             <version>${tesseract-platform.version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>org.imgscalr</groupId> | ||||
|             <artifactId>imgscalr-lib</artifactId> | ||||
|             <version>${imgscalr-version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>net.coobird</groupId> | ||||
|             <artifactId>thumbnailator</artifactId> | ||||
|             <version>${thumbnailator-version}</version> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>com.github.downgoon</groupId> | ||||
|             <artifactId>marvin</artifactId> | ||||
|             <version>${marvin-version}</version> | ||||
|             <type>pom</type> | ||||
|          </dependency> | ||||
|         <dependency> | ||||
|             <groupId>com.github.downgoon</groupId> | ||||
|             <artifactId>MarvinPlugins</artifactId> | ||||
|             <version>${marvin-version}</version> | ||||
|         </dependency> | ||||
|     </dependencies> | ||||
|      | ||||
|     <properties> | ||||
| @ -69,6 +90,9 @@ | ||||
|         <tess4j.version>4.5.1</tess4j.version> | ||||
|         <tesseract-platform.version>4.1.0-1.5.2</tesseract-platform.version> | ||||
|         <opencv.version>3.4.2-0</opencv.version> | ||||
|         <imgscalr-version>4.2</imgscalr-version> | ||||
|         <thumbnailator-version>0.4.11</thumbnailator-version> | ||||
|         <marvin-version>1.5.5</marvin-version> | ||||
|     </properties> | ||||
| 
 | ||||
| </project> | ||||
| @ -0,0 +1,25 @@ | ||||
| package com.baeldung.image.resize.core; | ||||
| 
 | ||||
| import java.awt.Graphics2D; | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| public class Graphics2DExample { | ||||
| 
 | ||||
|     static BufferedImage resizeImage(BufferedImage originalImage, int targetWidth, int targetHeight) { | ||||
|         BufferedImage resizedImage = new BufferedImage(targetWidth, targetHeight, BufferedImage.TYPE_INT_RGB); | ||||
|         Graphics2D graphics2D = resizedImage.createGraphics(); | ||||
|         graphics2D.drawImage(originalImage, 0, 0, targetWidth, targetHeight, null); | ||||
|         graphics2D.dispose(); | ||||
|         return resizedImage; | ||||
|     } | ||||
| 
 | ||||
|     public static void main(String[] args) throws IOException { | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = resizeImage(originalImage, 200, 200); | ||||
|         ImageIO.write(outputImage, "jpg", new File("src/main/resources/images/sampleImage-resized-graphics2d.jpg")); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,24 @@ | ||||
| package com.baeldung.image.resize.core; | ||||
| 
 | ||||
| import java.awt.Image; | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| public class ImageScaledInstanceExample { | ||||
|     static BufferedImage resizeImage(BufferedImage originalImage, int targetWidth, int targetHeight) { | ||||
|         Image resultingImage = originalImage.getScaledInstance(targetWidth, targetHeight, Image.SCALE_DEFAULT); | ||||
|         BufferedImage bufferedImage = new BufferedImage(targetWidth, targetHeight, BufferedImage.TYPE_INT_RGB); | ||||
|         bufferedImage.getGraphics() | ||||
|             .drawImage(resultingImage, 0, 0, null); | ||||
|         return bufferedImage; | ||||
|     } | ||||
| 
 | ||||
|     public static void main(String[] args) throws IOException { | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = resizeImage(originalImage, 200, 200); | ||||
|         ImageIO.write(outputImage, "jpg", new File("src/main/resources/images/sampleImage-resized-scaledinstance.jpg")); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,24 @@ | ||||
| package com.baeldung.image.resize.imgscalr; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.imgscalr.Scalr; | ||||
| 
 | ||||
| public class ImgscalrExample { | ||||
|     public static BufferedImage simpleResizeImage(BufferedImage originalImage, int targetWidth) { | ||||
|         return Scalr.resize(originalImage, targetWidth); | ||||
|     } | ||||
| 
 | ||||
|     public static BufferedImage resizeImage(BufferedImage originalImage, int targetWidth, int targetHeight) { | ||||
|         return Scalr.resize(originalImage, Scalr.Method.AUTOMATIC, Scalr.Mode.AUTOMATIC, targetWidth, targetHeight, Scalr.OP_ANTIALIAS); | ||||
|     } | ||||
| 
 | ||||
|     public static void main(String[] args) throws Exception { | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = resizeImage(originalImage, 200, 200); | ||||
|         ImageIO.write(outputImage, "jpg", new File("src/main/resources/images/sampleImage-resized-imgscalr.jpg")); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,29 @@ | ||||
| package com.baeldung.image.resize.marvin; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.marvinproject.image.transform.scale.Scale; | ||||
| 
 | ||||
| import marvin.image.MarvinImage; | ||||
| 
 | ||||
| public class MarvinExample { | ||||
|     static BufferedImage resizeImage(BufferedImage originalImage, int targetWidth, int targetHeight) { | ||||
|         MarvinImage image = new MarvinImage(originalImage); | ||||
|         Scale scale = new Scale(); | ||||
|         scale.load(); | ||||
|         scale.setAttribute("newWidth", targetWidth); | ||||
|         scale.setAttribute("newHeight", targetHeight); | ||||
|         scale.process(image.clone(), image, null, null, false); | ||||
|         return image.getBufferedImageNoAlpha(); | ||||
|     } | ||||
| 
 | ||||
|     public static void main(String args[]) throws IOException { | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = resizeImage(originalImage, 200, 200); | ||||
|         ImageIO.write(outputImage, "jpg", new File("src/main/resources/images/sampleImage-resized-marvin.jpg")); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,31 @@ | ||||
| package com.baeldung.image.resize.thumbnailator; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.ByteArrayInputStream; | ||||
| import java.io.ByteArrayOutputStream; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import net.coobird.thumbnailator.Thumbnails; | ||||
| 
 | ||||
| public class ThumbnailatorExample { | ||||
|     static BufferedImage resizeImage(BufferedImage originalImage, int targetWidth, int targetHeight) throws IOException { | ||||
|         ByteArrayOutputStream outputStream = new ByteArrayOutputStream(); | ||||
|         Thumbnails.of(originalImage) | ||||
|             .size(targetWidth, targetHeight) | ||||
|             .outputFormat("JPEG") | ||||
|             .outputQuality(0.90) | ||||
|             .toOutputStream(outputStream); | ||||
|         byte[] data = outputStream.toByteArray(); | ||||
|         ByteArrayInputStream inputStream = new ByteArrayInputStream(data); | ||||
|         return ImageIO.read(inputStream); | ||||
|     } | ||||
| 
 | ||||
|     public static void main(String[] args) throws Exception { | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = resizeImage(originalImage, 200, 200); | ||||
|         ImageIO.write(outputImage, "jpg", new File("src/main/resources/images/sampleImage-resized-thumbnailator.jpg")); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,71 @@ | ||||
| package com.baeldung.image.resize.core; | ||||
| 
 | ||||
| import static org.junit.Assert.assertNotNull; | ||||
| import static org.junit.Assert.assertNull; | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNotEquals; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| 
 | ||||
| public class Graphics2DExampleUnitTest { | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenImageGeneratedWithoutError() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = Graphics2DExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenOutputImageSizeIsValid() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         assertNotEquals(originalImage.getWidth(), targetWidth); | ||||
|         assertNotEquals(originalImage.getHeight(), targetHeight); | ||||
|         BufferedImage outputImage = Graphics2DExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetWidthIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 0; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = Graphics2DExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetHeightIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 0; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = Graphics2DExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageDoesNotExist_thenErrorIsNotThrownAndImageIsGenerated() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage outputImage = Graphics2DExample.resizeImage(null, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,69 @@ | ||||
| package com.baeldung.image.resize.core; | ||||
| 
 | ||||
| import static org.junit.Assert.assertNotNull; | ||||
| import static org.junit.Assert.assertNull; | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNotEquals; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| 
 | ||||
| public class ImageScaledInstanceExampleUnitTest { | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenImageGeneratedWithoutError() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImageScaledInstanceExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenOutputImageSizeIsValid() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         assertNotEquals(originalImage.getWidth(), targetWidth); | ||||
|         assertNotEquals(originalImage.getHeight(), targetHeight); | ||||
|         BufferedImage outputImage = ImageScaledInstanceExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetWidthIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 0; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImageScaledInstanceExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetHeightIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 0; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImageScaledInstanceExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenOriginalImageDoesNotExist_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage outputImage = ImageScaledInstanceExample.resizeImage(null, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,69 @@ | ||||
| package com.baeldung.image.resize.imgscalr; | ||||
| 
 | ||||
| import static org.junit.Assert.assertNotNull; | ||||
| import static org.junit.Assert.assertNull; | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNotEquals; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| 
 | ||||
| public class ImgscalrExampleUnitTest { | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenImageGeneratedWithoutError() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImgscalrExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenOutputImageSizeIsValid() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         assertNotEquals(originalImage.getWidth(), targetWidth); | ||||
|         assertNotEquals(originalImage.getHeight(), targetHeight); | ||||
|         BufferedImage outputImage = ImgscalrExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenTargetWidthIsZero_thenImageIsCreated() throws IOException { | ||||
|         int targetWidth = 0; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImgscalrExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenTargetHeightIsZero_thenImageIsCreated() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 0; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ImgscalrExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenOriginalImageDoesNotExist_thenErrorIsThrown() { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage outputImage = ImgscalrExample.resizeImage(null, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,68 @@ | ||||
| package com.baeldung.image.resize.marvin; | ||||
| 
 | ||||
| import static org.junit.Assert.assertNotNull; | ||||
| import static org.junit.Assert.assertNull; | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNotEquals; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| 
 | ||||
| public class MarvinExampleUnitTest { | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenImageGeneratedWithoutError() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = MarvinExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenOutputImageSizeIsValid() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         assertNotEquals(originalImage.getWidth(), targetWidth); | ||||
|         assertNotEquals(originalImage.getHeight(), targetHeight); | ||||
|         BufferedImage outputImage = MarvinExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetWidthIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 0; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = MarvinExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetHeightIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 0; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = MarvinExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenOriginalImageDoesNotExist_thenErrorIsThrown() { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage outputImage = MarvinExample.resizeImage(null, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,68 @@ | ||||
| package com.baeldung.image.resize.thumbnailator; | ||||
| 
 | ||||
| import static org.junit.Assert.assertNotNull; | ||||
| import static org.junit.Assert.assertNull; | ||||
| import static org.junit.jupiter.api.Assertions.assertEquals; | ||||
| import static org.junit.jupiter.api.Assertions.assertNotEquals; | ||||
| 
 | ||||
| import java.awt.image.BufferedImage; | ||||
| import java.io.File; | ||||
| import java.io.IOException; | ||||
| 
 | ||||
| import javax.imageio.ImageIO; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| 
 | ||||
| public class ThumbnailatorExampleUnitTest { | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenImageGeneratedWithoutError() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ThumbnailatorExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNotNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Test.None.class) | ||||
|     public void whenOriginalImageExistsAndTargetSizesAreNotZero_thenOutputImageSizeIsValid() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         assertNotEquals(originalImage.getWidth(), targetWidth); | ||||
|         assertNotEquals(originalImage.getHeight(), targetHeight); | ||||
|         BufferedImage outputImage = ThumbnailatorExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertEquals(outputImage.getWidth(), targetWidth); | ||||
|         assertEquals(outputImage.getHeight(), targetHeight); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetWidthIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 0; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ThumbnailatorExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenTargetHeightIsZero_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 0; | ||||
|         BufferedImage originalImage = ImageIO.read(new File("src/main/resources/images/sampleImage.jpg")); | ||||
|         BufferedImage outputImage = ThumbnailatorExample.resizeImage(originalImage, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| 
 | ||||
|     @Test(expected = Exception.class) | ||||
|     public void whenOriginalImageDoesNotExist_thenErrorIsThrown() throws IOException { | ||||
|         int targetWidth = 200; | ||||
|         int targetHeight = 200; | ||||
|         BufferedImage outputImage = ThumbnailatorExample.resizeImage(null, targetWidth, targetHeight); | ||||
| 
 | ||||
|         assertNull(outputImage); | ||||
|     } | ||||
| } | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user