rahmen-exiv2 0.2.0

Minimal safe wrapper over libexiv2 for rahmen
Documentation
  • Coverage
  • 100%
    5 out of 5 items documented0 out of 4 items with examples
  • Size
  • Source code size: 21.27 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 337.11 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 15s Average build duration of successful builds.
  • all releases: 15s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • antiguru/rahmen
    3 1 1
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • antiguru

rahmen-exiv2

A minimal, safe wrapper over libexiv2, built for rahmen.

It exposes only the read-only image-metadata operations rahmen needs — opening an image and reading a single Exif/Iptc/Xmp tag as an interpreted (human-readable) string — through a small C++ shim bound with cxx. The unavoidable FFI unsafe is confined to this crate, so dependents can keep #![forbid(unsafe_code)].

Requirements

  • libexiv2 development files (e.g. libexiv2-dev on Debian/Ubuntu); discovered at build time via pkg-config. exiv2 0.27 and 0.28 are both supported.
  • A C++17 compiler.

Example

use rahmen_exiv2::Metadata;

let meta = Metadata::new_from_path("image.jpg")?;
let when = meta.get_tag_interpreted_string("Exif.Photo.DateTimeOriginal")?;
println!("{when}");
# Ok::<(), rahmen_exiv2::Exiv2Error>(())

License

GPL-3.0-only. See the repository's LICENSE.