org.apache.sanselan.formats.jpeg.xmp
Class JpegXmpRewriter

java.lang.Object
  extended by org.apache.sanselan.common.BinaryFileFunctions
      extended by org.apache.sanselan.common.BinaryFileParser
          extended by org.apache.sanselan.formats.jpeg.xmp.JpegRewriter
              extended by org.apache.sanselan.formats.jpeg.xmp.JpegXmpRewriter
All Implemented Interfaces:
BinaryConstants, JpegConstants

public class JpegXmpRewriter
extends JpegRewriter

Interface for Exif write/update/remove functionality for Jpeg/JFIF images.

See the source of the XmpXmlUpdateExample class for example usage.

See Also:
org.apache.sanselan.sampleUsage.WriteXmpXmlExample

Nested Class Summary
 
Nested classes/interfaces inherited from class org.apache.sanselan.formats.jpeg.xmp.JpegRewriter
JpegRewriter.JFIFPiece, JpegRewriter.JFIFPieceImageData, JpegRewriter.JFIFPieces, JpegRewriter.JFIFPieceSegment, JpegRewriter.JpegSegmentOverflowException
 
Field Summary
 
Fields inherited from class org.apache.sanselan.common.BinaryFileFunctions
debug
 
Fields inherited from interface org.apache.sanselan.formats.jpeg.JpegConstants
CONST_8BIM, EOI, EXIF_IDENTIFIER_CODE, icc_profile_label, JFIF0_SIGNATURE, JFIF0_SIGNATURE_ALTERNATIVE, JFIFMarker, JPEG_APP0, JPEG_APP0_Marker, JPEG_APP1_Marker, JPEG_APP13_Marker, JPEG_APP14_Marker, JPEG_APP15_Marker, JPEG_APP2_Marker, MARKERS, MAX_SEGMENT_SIZE, PHOTOSHOP_IDENTIFICATION_STRING, SOF0Marker, SOF10Marker, SOF11Marker, SOF12Marker, SOF13Marker, SOF14Marker, SOF15Marker, SOF1Marker, SOF2Marker, SOF3Marker, SOF4Marker, SOF5Marker, SOF6Marker, SOF7Marker, SOF8Marker, SOF9Marker, SOI, SOS_Marker, XMP_IDENTIFIER
 
Fields inherited from interface org.apache.sanselan.common.BinaryConstants
BYTE_ORDER_BIG_ENDIAN, BYTE_ORDER_INTEL, BYTE_ORDER_LEAST_SIGNIFICANT_BYTE, BYTE_ORDER_LITTLE_ENDIAN, BYTE_ORDER_LSB, BYTE_ORDER_MOST_SIGNIFICANT_BYTE, BYTE_ORDER_MOTOROLA, BYTE_ORDER_MSB, BYTE_ORDER_NETWORK
 
Constructor Summary
JpegXmpRewriter()
           
 
Method Summary
 void removeXmpXml(byte[] src, java.io.OutputStream os)
          Reads a Jpeg image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
 void removeXmpXml(ByteSource byteSource, java.io.OutputStream os)
          Reads a Jpeg image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
 void removeXmpXml(java.io.File src, java.io.OutputStream os)
          Reads a Jpeg image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
 void removeXmpXml(java.io.InputStream src, java.io.OutputStream os)
          Reads a Jpeg image, removes all XMP XML (by removing the APP1 segment), and writes the result to a stream.
 void updateXmpXml(byte[] src, java.io.OutputStream os, java.lang.String xmpXml)
          Reads a Jpeg image, replaces the XMP XML and writes the result to a stream.
 void updateXmpXml(ByteSource byteSource, java.io.OutputStream os, java.lang.String xmpXml)
          Reads a Jpeg image, replaces the XMP XML and writes the result to a stream.
 void updateXmpXml(java.io.File src, java.io.OutputStream os, java.lang.String xmpXml)
          Reads a Jpeg image, replaces the XMP XML and writes the result to a stream.
 void updateXmpXml(java.io.InputStream src, java.io.OutputStream os, java.lang.String xmpXml)
          Reads a Jpeg image, replaces the XMP XML and writes the result to a stream.
 
Methods inherited from class org.apache.sanselan.formats.jpeg.xmp.JpegRewriter
analyzeJFIF, filterSegments, filterSegments, findPhotoshopApp13Segments, insertAfterLastAppSegments, insertBeforeFirstAppSegments, removeExifSegments, removePhotoshopApp13Segments, removeXmpSegments, writeSegments
 
Methods inherited from class org.apache.sanselan.common.BinaryFileParser
byteArrayHasPrefix, convertByteArrayToInt, convertByteArrayToInt, convertByteArrayToShort, convertByteArrayToShort, getByteOrder, int2ToByteArray, read2Bytes, read3Bytes, read4Bytes, setByteOrder, setByteOrder
 
Methods inherited from class org.apache.sanselan.common.BinaryFileFunctions
CharsToQuad, compareByteArrays, compareByteArrays, compareBytes, compareBytes, convertByteArrayToDouble, convertByteArrayToDouble, convertByteArrayToDoubleArray, convertByteArrayToFloat, convertByteArrayToFloat, convertByteArrayToFloatArray, convertByteArrayToInt, convertByteArrayToInt, convertByteArrayToIntArray, convertByteArrayToRational, convertByteArrayToRational, convertByteArrayToRationalArray, convertByteArrayToShort, convertByteArrayToShort, convertByteArrayToShortArray, convertDoubleArrayToByteArray, convertDoubleToByteArray, convertFloatArrayToByteArray, convertFloatToByteArray, convertIntArrayToByteArray, convertIntArrayToRationalArray, convertRationalArrayToByteArray, convertRationalToByteArray, convertShortArrayToByteArray, convertShortToByteArray, copyStreamToStream, debugByteArray, debugNumber, debugNumber, debugNumber, debugNumber, debugNumberArray, findNull, findNull, getBytearrayHead, getByteArrayTail, getDebug, getRAFBytes, getStreamBytes, head, int2ToByteArray, printByteBits, printCharQuad, printCharQuad, read2Bytes, read3Bytes, read4Bytes, readAndVerifyBytes, readAndVerifyBytes, readByte, readBytearray, readByteArray, readByteArray, readBytes, readRandomBytes, scanForByte, setDebug, skipBytes, skipBytes, slice, startsWith, tail, writeIntInToByteArray
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JpegXmpRewriter

public JpegXmpRewriter()
Method Detail

removeXmpXml

public void removeXmpXml(java.io.File src,
                         java.io.OutputStream os)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException
See Also:
File, OutputStream

removeXmpXml

public void removeXmpXml(byte[] src,
                         java.io.OutputStream os)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

removeXmpXml

public void removeXmpXml(java.io.InputStream src,
                         java.io.OutputStream os)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

removeXmpXml

public void removeXmpXml(ByteSource byteSource,
                         java.io.OutputStream os)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

updateXmpXml

public void updateXmpXml(byte[] src,
                         java.io.OutputStream os,
                         java.lang.String xmpXml)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

updateXmpXml

public void updateXmpXml(java.io.InputStream src,
                         java.io.OutputStream os,
                         java.lang.String xmpXml)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

updateXmpXml

public void updateXmpXml(java.io.File src,
                         java.io.OutputStream os,
                         java.lang.String xmpXml)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException

updateXmpXml

public void updateXmpXml(ByteSource byteSource,
                         java.io.OutputStream os,
                         java.lang.String xmpXml)
                  throws ImageReadException,
                         java.io.IOException,
                         ImageWriteException
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:
ImageReadException
java.io.IOException
ImageWriteException


Copyright © 2007-2009. All Rights Reserved.