@Test public void testEmbeddedIPTC() throws IOException { EditableImage image = EditableImage.create(new ReadOp(new File("/Users/fritz/Desktop/TEST/BaragliEtruscan181.jpg"))); IPTC iptc = image.getMetadata(IPTC.class); System.err.println(iptc); } }
@Test public void testSerialize() throws IOException, ClassNotFoundException { File file = new File("Serialized"); ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file)); EditableImage image1 = EditableImage.create(new ReadOp(file_20030701_0043_jpg)); oos.writeObject(image1); oos.close(); log("serialized" + image1); ObjectInputStream ois = new ObjectInputStream(new FileInputStream(file)); EditableImage image2 = (EditableImage)ois.readObject(); ois.close(); log("deserialized" + image2); }
@BeforeMethod public void setUp() throws Exception { final long maxMemory = Runtime.getRuntime().maxMemory(); AssertJUnit.assertTrue("Must set -Xmx512M: " + maxMemory, maxMemory >= 500000000); AssertJUnit.assertTrue(file_20030701_0043_jpg.exists()); AssertJUnit.assertTrue(file_20060603_0002_jpg.exists()); AssertJUnit.assertTrue(file_20030701_0043_nef.exists()); img20030701_0043_jpg = EditableImage.create(new ReadOp(file_20030701_0043_jpg)); img20060603_0002_jpg = EditableImage.create(new ReadOp(file_20060603_0002_jpg)); imgIPTC1_jpg = EditableImage.create(new ReadOp(file_IPTC1_jpg)); fax1_tif = EditableImage.create(new ReadOp(file_fax1_tif)); }
@Test public void testCreateSingleBandUnsignedShortBlack () { log("testCreateSingleBandUnsignedShortBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.UNSIGNED_SHORT)); assertImage(image, 1, 16, 16, EditableImage.DataType.UNSIGNED_SHORT); assertIntContents(image, 0); }
@Test public void testCreateSingleBandIntInitialValue () { log("testCreateSingleBandIntInitialValue"); for (int i = 0; i < intValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.INT, intValues[i])); assertImage(image, 1, 32, 32, EditableImage.DataType.INT); assertIntContents(image, intValues[i]); } }
@Test public void testCreateSingleBandDoubleBlack () { log("testCreateSingleBandDoubleBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.DOUBLE)); assertImage(image, 1, 64, 64, EditableImage.DataType.DOUBLE); assertDoubleContents(image, 0); }
@Test public void testCreateSingleBandFloatInitialValue () { log("testCreateSingleBandFloatInitialValue"); for (int i = 0; i < floatValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT, floatValues[i])); assertImage(image, 1, 32, 32, EditableImage.DataType.FLOAT); assertFloatContents(image, floatValues[i]); } }
@Test public void testCreateSingleBandDoubleInitialValue () { log("testCreateSingleBandDoubleInitialValue"); for (int i = 0; i < doubleValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.DOUBLE, doubleValues[i])); assertImage(image, 1, 64, 64, EditableImage.DataType.DOUBLE); assertDoubleContents(image, doubleValues[i]); } }
@Test public void testCreateSingleBandByteBlack () { log("testCreateSingleBandByteBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.BYTE)); assertImage(image, 1, 8, 8, EditableImage.DataType.BYTE); assertIntContents(image, 0); }
@Test public void testCreateSingleBandIntBlack () { log("testCreateSingleBandFloatBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.INT)); assertImage(image, 1, 32, 32, EditableImage.DataType.INT); assertIntContents(image, 0); }
@Test public void testCreateSingleBandFloatBlack () { log("testCreateSingleBandFloatBlack"); final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT)); assertImage(image, 1, 32, 32, EditableImage.DataType.FLOAT); assertFloatContents(image, 0f); }
@Test public void testCreateSingleBandByteInitialValue () { log("testCreateSingleBandByteInitialValue"); for (int i = 0; i < byteValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.BYTE, byteValues[i])); assertImage(image, 1, 8, 8, EditableImage.DataType.BYTE); assertIntContents(image, byteValues[i]); } }
@Test public void testCreateSingleBandUnsignedShortInitialValue () { log("testCreateSingleBandUnsignedShortInitialValue"); for (int i = 0; i < shortValues.length; i++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.UNSIGNED_SHORT, shortValues[i])); assertImage(image, 1, 16, 16, EditableImage.DataType.UNSIGNED_SHORT); assertIntContents(image, shortValues[i]); } }
@Test public void testReadTIFF2() throws FileNotFoundException, IOException { File file = file_w1_tiff; AssertJUnit.assertTrue(file.exists()); final EditableImage image = EditableImage.create(new ReadOp(file)); AssertJUnit.assertEquals("tif", image.getAttribute(EditableImage.PROP_FORMAT)); AssertJUnit.assertEquals("image/tiff", image.getAttribute(EditableImage.PROP_MIME_TYPE)); } }
@Test public void testReadTIFF1() throws FileNotFoundException, IOException { File file = file_uncompressed_tiff; AssertJUnit.assertTrue(file.exists()); final EditableImage image = EditableImage.create(new ReadOp(file)); AssertJUnit.assertEquals("tif", image.getAttribute(EditableImage.PROP_FORMAT)); AssertJUnit.assertEquals("image/tiff", image.getAttribute(EditableImage.PROP_MIME_TYPE)); }
@Test public void testReadJPG1() throws FileNotFoundException, IOException { File file = file_20030701_0043_jpg; AssertJUnit.assertTrue(file.exists()); final EditableImage image = EditableImage.create(new ReadOp(file)); AssertJUnit.assertEquals("JPEG", image.getAttribute(EditableImage.PROP_FORMAT)); AssertJUnit.assertEquals("image/jpeg", image.getAttribute(EditableImage.PROP_MIME_TYPE)); }
@Test public void testLoadWangAnnotations() throws IOException { final String fax = "/Users/fritz/Business/Tidalwave/Projects/Mistral/Nextre/Fax_Image_1.tif"; final EditableImage image = EditableImage.create(new ReadOp(new File(fax))); AssertJUnit.assertNotNull(image); final TIFF tiff = image.getMetadata(TIFF.class); AssertJUnit.assertNotNull(tiff); // final EXIF exif = image.getMetadata(EXIF.class); // assertNotNull(exif); System.err.println("TAGS: " + Arrays.toString(tiff.getTagCodes())); // assertTrue(tiff.containsTag(32934)); AssertJUnit.assertTrue(tiff.isWangAnnotationAvailable()); final WangAnnotations wangAnnotations = tiff.getWangAnnotations2(); } }
@Test public void testCreateThreeBandsFloatInitialValue () { log("testCreateThreeBandsFloatInitialValue"); for (int r = 0; r < floatValues2.length; r++) { for (int g = 0; g < floatValues2.length; g++) { for (int b = 0; b < floatValues2.length; b++) { final EditableImage image = EditableImage.create(new CreateOp(WIDTH, HEIGHT, EditableImage.DataType.FLOAT, floatValues2[r], floatValues2[g], floatValues2[b])); assertImage(image, 3, 32, 96, EditableImage.DataType.FLOAT); assertFloatContents(image, floatValues2[r], floatValues2[g], floatValues2[b]); } } } }
@Test public void testExecute() throws IOException { // ImplementationFactoryJ2D.unregister(SizeOp.class); Lookup.getDefault().lookup(ImplementationFactoryJAI.class); final EditableImage image = EditableImage.create(new ReadOp(file_20030701_0043_jpg)); for (float scale = 0.1f; scale <= 1.0f; scale += 0.1f) { final EditableImage result = image.execute2(new SizeOp(scale)); result.execute(new ForceRenderingOp()); result.execute(new WriteOp("JPEG", "build/test/results/result-" + scale + ".jpg")); } } }
private void convert (final DataType fromType, final DataType toType) { Lookup.getDefault().lookup(ImplementationFactoryJAI.class); final EditableImage image = EditableImage.create(new CreateOp(640, 480, fromType)); assertEquals(fromType, image.getDataType()); assertEquals("KODAK Grayscale Conversion - Gamma 1.0", ImageUtils.getICCProfileName(image.getICCProfile())); assertNotNull(image.getICCProfile()); image.execute(new ChangeFormatOp(toType)); assertEquals(toType, image.getDataType()); assertNotNull(image.getICCProfile()); assertEquals("KODAK Grayscale Conversion - Gamma 1.0", ImageUtils.getICCProfileName(image.getICCProfile())); } }