Tommy-Geenexus / exif-interface-extended

AndroidX ExifInterface with an extended API
Apache License 2.0
13 stars 0 forks source link
android exif library

License CI status Maven Central

exif-interface-extended

This library

*Minor changes include bug fixes as well as additional sanity checks for I/O operations. Major changes were made only to reading metadata from JPEG, PNG or WebP images, where additional metadata (XMP for PNG/WebP, ExtendedXMP/Photoshop for JPEG, ICC profile for JPEG/PNG/WebP) will be recognized.

Usage

implementation("io.github.tommy-geenexus:exif-interface-extended:1.0.4")

API Examples

Save the JPEG, PNG or WebP image without metadata

val exifInterfaceExtended = ExifInterfaceExtended(source)
exifInterfaceExtended.saveExclusive(source, sink, preserveOrientation)

Check whether the JPEG, PNG or WebP image has attributes

val exifInterfaceExtended = ExifInterfaceExtended(source)
val hasAttributes = exifInterfaceExtended.hasAttributes(ignoreImageWidthAndLength)

Check whether the JPEG, PNG or WebP image contains XMP metadata

val exifInterfaceExtended = ExifInterfaceExtended(source)
val hasXmp = exifInterfaceExtended.hasXmp()

Check whether the JPEG image contains ExtendedXMP metadata

val exifInterfaceExtended = ExifInterfaceExtended(source)
val hasExtendedXmp = exifInterfaceExtended.hasExtendedXmp()

Check whether the JPEG image contains Photoshop metadata

val exifInterfaceExtended = ExifInterfaceExtended(source)
val hasPhotoshopImageResources = exifInterfaceExtended.hasPhotoshopImageResources()

Check whether the JPEG, PNG or WebP image contains an embedded ICC profile

val exifInterfaceExtended = ExifInterfaceExtended(source)
val hasIccProfile = exifInterfaceExtended.hasIccProfile()