#tiff #jpeg #jpeg-tiff

kamadak-exif

Exif parsing library written in pure Rust

19 releases

0.6.1 Nov 6, 2024
0.5.5 Oct 22, 2022
0.5.4 Mar 26, 2021
0.5.2 Aug 7, 2020
0.1.0 Dec 31, 2016

#13 in Images

Download history 26090/week @ 2025-01-05 26579/week @ 2025-01-12 25752/week @ 2025-01-19 26003/week @ 2025-01-26 29776/week @ 2025-02-02 27714/week @ 2025-02-09 29431/week @ 2025-02-16 30147/week @ 2025-02-23 28074/week @ 2025-03-02 28432/week @ 2025-03-09 30018/week @ 2025-03-16 33034/week @ 2025-03-23 35122/week @ 2025-03-30 38676/week @ 2025-04-06 34625/week @ 2025-04-13 29467/week @ 2025-04-20

140,743 downloads per month
Used in 152 crates (58 directly)

BSD-2-Clause

240KB
5K SLoC

Exif parsing library written in pure Rust

This is a pure-Rust library to parse Exif data. This library parses Exif attributes in a raw Exif data block. It can also read Exif data directly from some image formats.

Supported formats are:

  • TIFF and some RAW image formats based on it
  • JPEG
  • HEIF and coding-specific variations including HEIC and AVIF
  • PNG
  • WebP

Usage

Add a dependency entry to your Cargo.toml. Specify "kamadak-exif" if you use crates.io. The canonical name of this crate is "exif", but it is renamed on crates.io to avoid a naming conflict.

  [dependencies]
  kamadak-exif = "x.y.z"

Add the following to your crate root (before Rust 2018).

  extern crate exif;

Run "cargo doc" in the source directory to generate the API reference. It is also available online at https://docs.rs/kamadak-exif.

See examples directory for sample codes.

Dependencies

Rust 1.60 or later is required to build.

Standards

  • Exif Version 2.32
  • DCF Version 2.0 (Edition 2010)
  • TIFF Revision 6.0
  • ISO/IEC 14496-12:2015
  • ISO/IEC 23008-12:2017
  • PNG Specification, Version 1.2
  • Extensions to the PNG 1.2 Specification, version 1.5.0
  • WebP Container Specification, committed on 2018-04-20

Dependencies