#image #libexif

nightly exif

Rust wrapper for libexif

1 unstable release

Uses old Rust 2015

0.0.1 Sep 6, 2016

#1202 in #image

Download history 63/week @ 2025-06-20 20/week @ 2025-06-27 20/week @ 2025-07-04 17/week @ 2025-07-11 11/week @ 2025-07-18 13/week @ 2025-07-25 27/week @ 2025-08-01 18/week @ 2025-08-08 18/week @ 2025-08-15 48/week @ 2025-08-22 200/week @ 2025-08-29 495/week @ 2025-09-05 219/week @ 2025-09-12 59/week @ 2025-09-19 48/week @ 2025-09-26 74/week @ 2025-10-03

421 downloads per month

MIT license

27KB
602 lines

EXIF

The exif crate provides a safe wrapper around the native libexif library.

Dependencies

In order to use the exif crate, you must have the libexif library installed where it can be found by pkg-config.

Usage

Add exif as a dependency in Cargo.toml:

[dependencies]
exif = "0.0.1"

Import the exif crate.

extern crate exif;

use std::io;
use std::path::Path;

fn dump_exif<P: AsRef<Path>>(file_name: P) -> io::Result<()> {
    let data = try!(exif::Data::open("image.jpg"));

    for content in data.contents() {
        println!("[{:=>32}{:=>46}]", format!(" {:?} ", content.ifd()), "");

        for entry in content.entries() {
            println!("  {:<30} = {}",
                    entry.tag().title(content.ifd()),
                    entry.text_value());
        }
    }

    Ok(())
}

License

Copyright © 2016 David Cuddeback

Distributed under the MIT License.

Note: By using this crate, your executable will link to the libexif C library, which is licensed under the LGPL version 2.1.

Dependencies

~69KB