Examples of JpegSegmentData


Examples of com.drew.imaging.jpeg.JpegSegmentData

        }
        byte segment = (byte)(JpegSegmentReader.SEGMENT_APP0 + segmentNumber);

        String filePath = args[0];

        JpegSegmentData segmentData = new JpegSegmentReader(new File(filePath)).getSegmentData();
        final int segmentCount = segmentData.getSegmentCount(segment);
        if (segmentCount == 0) {
            System.err.printf("No data was found in app segment %d.\n", segmentNumber);
            System.exit(1);
        }
        if (segmentCount != 1 && args.length == 2) {
            System.err.printf("%d occurrences of segment %d found.  You must specify which index to use (zero based).\n", segmentCount, segmentNumber);
            System.exit(1);
        }

        int occurrence = args.length > 2 ? Integer.parseInt(args[2]) : 0;
        if (occurrence >= segmentCount) {
            System.err.printf("Invalid occurrence number.  Requested %d but only %d segments exist.\n", occurrence, segmentCount);
            System.exit(1);
        }

        String outputFilePath = filePath + ".app" + segmentNumber + "bytes";

        final byte[] bytes = segmentData.getSegment(segment, occurrence);

        System.out.println("Writing output to: " + outputFilePath);

        FileOutputStream stream = null;
        try {
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

    @NotNull
    private static <T extends Directory> T readDirectoryFromMetadataFile(String fileName, final Class<T> directoryClass) throws JpegProcessingException, IOException, ClassNotFoundException
    {
        Metadata metadata = new Metadata();
        final JpegSegmentData jpegSegmentData = JpegSegmentData.fromFile(new File(fileName));
        byte[] data = jpegSegmentData.getSegment(JpegSegmentReader.SEGMENT_APP1);
        Assert.assertNotNull(data);
        new ExifReader().extract(new ByteArrayReader(data), metadata);
        final T directory = metadata.getDirectory(directoryClass);
        Assert.assertNotNull(directory);
        return directory;
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

    @Before
    public void setUp() throws Exception
    {
        // use a known testing image
        File metadataFile = new File("Tests/com/drew/metadata/xmp/withXmpAndIptc.metadata");
        JpegSegmentData jpegSegmentData = JpegSegmentData.fromFile(metadataFile);
        Metadata metadata = new Metadata();
        final byte[] data = jpegSegmentData.getSegment(JpegSegmentReader.SEGMENT_APP1, 1);
        Assert.assertNotNull(data);
        new XmpReader().extract(new ByteArrayReader(data), metadata);
        Assert.assertTrue(metadata.containsDirectory(XmpDirectory.class));
        _directory = metadata.getOrCreateDirectory(XmpDirectory.class);
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

{
    @Test
    public void testReadAdobeJpegMetadata1() throws Exception
    {
        final File metadataFile = new File("Tests/com/drew/metadata/adobe/adobeJpeg1.jpg");
        final JpegSegmentData jpegSegmentData = new JpegSegmentReader(metadataFile).getSegmentData();
        final byte[] bytes = jpegSegmentData.getSegment(JpegSegmentReader.SEGMENT_APPE);

        Assert.assertNotNull(bytes);

        final Metadata metadata = new Metadata();
        new AdobeJpegReader().extract(new ByteArrayReader(bytes), metadata);
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

    @NotNull
    public static Metadata readJpegMetadataFile(String path) throws ClassNotFoundException, IOException
    {
        final File file = new File(path);
        final JpegSegmentData data = JpegSegmentData.fromFile(file);
        return JpegMetadataReader.extractMetadataFromJpegSegmentReader(data);
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

        super(name);
    }

    public void testAddAndGetSegment() throws Exception
    {
        JpegSegmentData segmentData = new JpegSegmentData();

        byte segmentMarker = (byte)12;
        byte[] segmentBytes = new byte[] { 1,2,3 };

        segmentData.addSegment(segmentMarker, segmentBytes);
        assertEquals(1, segmentData.getSegmentCount(segmentMarker));
        TestHelper.assertEqualArrays(segmentBytes, segmentData.getSegment(segmentMarker));
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

        TestHelper.assertEqualArrays(segmentBytes, segmentData.getSegment(segmentMarker));
    }

    public void testContainsSegment() throws Exception
    {
        JpegSegmentData segmentData = new JpegSegmentData();

        byte segmentMarker = (byte)12;
        byte[] segmentBytes = new byte[] { 1,2,3 };

        assertTrue(!segmentData.containsSegment(segmentMarker));

        segmentData.addSegment(segmentMarker, segmentBytes);

        assertTrue(segmentData.containsSegment(segmentMarker));
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

        assertTrue(segmentData.containsSegment(segmentMarker));
    }

    public void testAddingMultipleSegments() throws Exception
    {
        JpegSegmentData segmentData = new JpegSegmentData();

        byte segmentMarker1 = (byte)12;
        byte segmentMarker2 = (byte)21;
        byte[] segmentBytes1 = new byte[] { 1,2,3 };
        byte[] segmentBytes2 = new byte[] { 3,2,1 };

        segmentData.addSegment(segmentMarker1, segmentBytes1);
        segmentData.addSegment(segmentMarker2, segmentBytes2);
        assertEquals(1, segmentData.getSegmentCount(segmentMarker1));
        assertEquals(1, segmentData.getSegmentCount(segmentMarker2));
        TestHelper.assertEqualArrays(segmentBytes1, segmentData.getSegment(segmentMarker1));
        TestHelper.assertEqualArrays(segmentBytes2, segmentData.getSegment(segmentMarker2));
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

        TestHelper.assertEqualArrays(segmentBytes2, segmentData.getSegment(segmentMarker2));
    }

    public void testSegmentWithMultipleOccurrences() throws Exception
    {
        JpegSegmentData segmentData = new JpegSegmentData();

        byte segmentMarker = (byte)12;
        byte[] segmentBytes1 = new byte[] { 1,2,3 };
        byte[] segmentBytes2 = new byte[] { 3,2,1 };

        segmentData.addSegment(segmentMarker, segmentBytes1);
        segmentData.addSegment(segmentMarker, segmentBytes2);
        assertEquals(2, segmentData.getSegmentCount(segmentMarker));
        TestHelper.assertEqualArrays(segmentBytes1, segmentData.getSegment(segmentMarker));
        TestHelper.assertEqualArrays(segmentBytes1, segmentData.getSegment(segmentMarker, 0));
        TestHelper.assertEqualArrays(segmentBytes2, segmentData.getSegment(segmentMarker, 1));
    }
View Full Code Here

Examples of com.drew.imaging.jpeg.JpegSegmentData

        TestHelper.assertEqualArrays(segmentBytes2, segmentData.getSegment(segmentMarker, 1));
    }

    public void testRemoveSegmentOccurrence() throws Exception
    {
        JpegSegmentData segmentData = new JpegSegmentData();

        byte segmentMarker = (byte)12;
        byte[] segmentBytes1 = new byte[] { 1,2,3 };
        byte[] segmentBytes2 = new byte[] { 3,2,1 };

        segmentData.addSegment(segmentMarker, segmentBytes1);
        segmentData.addSegment(segmentMarker, segmentBytes2);

        assertEquals(2, segmentData.getSegmentCount(segmentMarker));

        TestHelper.assertEqualArrays(segmentBytes1, segmentData.getSegment(segmentMarker, 0));

        segmentData.removeSegmentOccurrence(segmentMarker, 0);

        TestHelper.assertEqualArrays(segmentBytes2, segmentData.getSegment(segmentMarker, 0));
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.