1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.commons.imaging.formats.png;
19
20 import static org.junit.jupiter.api.Assertions.assertNotNull;
21
22 import java.awt.image.BufferedImage;
23 import java.io.ByteArrayOutputStream;
24 import java.io.File;
25 import java.util.List;
26
27 import org.apache.commons.imaging.internal.Debug;
28 import org.junit.jupiter.api.Test;
29
30 public class PngWriteForceTrueColorText extends AbstractPngTest {
31
32 @Test
33 public void test() throws Exception {
34 final PngImageParser pngImageParser = new PngImageParser();
35 final List<File> images = getPngImages();
36 for (final File imageFile : images) {
37
38 try {
39 if (isInvalidPngTestFile(imageFile)) {
40 continue;
41 }
42
43 Debug.debug("imageFile", imageFile);
44
45
46
47
48
49 final BufferedImage image = pngImageParser.getBufferedImage(imageFile, new PngImagingParameters());
50 assertNotNull(image);
51
52
53
54 final PngImagingParameters params = new PngImagingParameters();
55 byte[] outFile;
56 try (ByteArrayOutputStream os = new ByteArrayOutputStream()) {
57 params.setForceTrueColor(Boolean.TRUE);
58 pngImageParser.writeImage(image, os, params);
59 outFile = os.toByteArray();
60 }
61
62 final BufferedImage image2 = pngImageParser.getBufferedImage(outFile, new PngImagingParameters());
63 assertNotNull(image2);
64 } catch (final Exception e) {
65 Debug.debug("imageFile", imageFile);
66 throw e;
67 }
68 }
69 Debug.debug("complete.");
70 }
71
72 }