Class JpegXmpRewriter


  • public class JpegXmpRewriter
    extends JpegRewriter
    Interface for Exif write/update/remove functionality for Jpeg/JFIF images.
    • Constructor Detail

      • JpegXmpRewriter

        public JpegXmpRewriter()
        Constructs a new instance with the default, big-endian, byte order.
    • Method Detail

      • removeXmpXml

        public void removeXmpXml​(byte[] src,
                                 java.io.OutputStream os)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
        Parameters:
        src - Byte array containing JPEG image data.
        os - OutputStream to write the image to.
        Throws:
        ImagingException - if it fails to read the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • removeXmpXml

        public void removeXmpXml​(ByteSource byteSource,
                                 java.io.OutputStream os)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
        Parameters:
        byteSource - ByteSource containing JPEG image data.
        os - OutputStream to write the image to.
        Throws:
        ImagingException - if it fails to read the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • removeXmpXml

        public void removeXmpXml​(java.io.File src,
                                 java.io.OutputStream os)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
        Parameters:
        src - Image file.
        os - OutputStream to write the image to.
        Throws:
        ImagingException - if it fails to read the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
        See Also:
        File, OutputStream
      • removeXmpXml

        public void removeXmpXml​(java.io.InputStream src,
                                 java.io.OutputStream os)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
        Parameters:
        src - InputStream containing JPEG image data.
        os - OutputStream to write the image to.
        Throws:
        ImagingException - if it fails to read the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • updateXmpXml

        public void updateXmpXml​(byte[] src,
                                 java.io.OutputStream os,
                                 java.lang.String xmpXml)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, replaces the XMP XML and writes the result to a stream.
        Parameters:
        src - Byte array containing JPEG image data.
        os - OutputStream to write the image to.
        xmpXml - String containing XMP XML.
        Throws:
        ImagingException - if it fails to read or write the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • updateXmpXml

        public void updateXmpXml​(ByteSource byteSource,
                                 java.io.OutputStream os,
                                 java.lang.String xmpXml)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, replaces the XMP XML and writes the result to a stream.
        Parameters:
        byteSource - ByteSource containing JPEG image data.
        os - OutputStream to write the image to.
        xmpXml - String containing XMP XML.
        Throws:
        ImagingException - if it fails to read or write the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • updateXmpXml

        public void updateXmpXml​(java.io.File src,
                                 java.io.OutputStream os,
                                 java.lang.String xmpXml)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, replaces the XMP XML and writes the result to a stream.
        Parameters:
        src - Image file.
        os - OutputStream to write the image to.
        xmpXml - String containing XMP XML.
        Throws:
        ImagingException - if it fails to read or write the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • updateXmpXml

        public void updateXmpXml​(java.io.InputStream src,
                                 java.io.OutputStream os,
                                 java.lang.String xmpXml)
                          throws ImagingException,
                                 java.io.IOException
        Reads a JPEG image, replaces the XMP XML and writes the result to a stream.
        Parameters:
        src - InputStream containing JPEG image data.
        os - OutputStream to write the image to.
        xmpXml - String containing XMP XML.
        Throws:
        ImagingException - if it fails to read or write the JFIF segments
        java.io.IOException - if it fails to read or write the data from the segments
      • writeXmpSegment

        private byte[] writeXmpSegment​(byte[] xmpXmlData,
                                       int start,
                                       int length)
                                throws java.io.IOException
        Throws:
        java.io.IOException