2个版本

使用旧的Rust 2015

0.1.1 2015年11月5日
0.1.0 2015年10月30日

#864 in 图像

每月下载量:29

MIT许可证

3.5MB
407 代码行

LibRaw

libraw crate提供了一个对本地libraw库的安全封装。

依赖项

为了使用libraw crate,您必须安装libraw_r库,使其可以通过pkg-config找到。libraw_r是LibRaw的可重入版本。不支持与非可重入的libraw链接。

在基于Debian的Linux发行版上,安装libraw-dev

sudo apt-get install libraw-dev

在OS X上,使用Homebrew安装libraw

brew install libraw

在FreeBSD上,安装libraw

sudo pkg install libraw

使用方法

Cargo.toml中将libraw添加为依赖项

[dependencies]
libraw = "0.1"

导入libraw crate。使用Image::open()打开图像,然后使用Image上的方法操作和检查原始图像数据。

extern crate libraw;

use std::path::Path;

fn main() {
    let mut image = libraw::Image::open(Path::new("image.nef")).unwrap();

    image.unpack().unwrap();
    let raw = image.raw_pixmap().unwrap();

    let sum = raw.pixels().fold(0, |accum, pixel| {
        accum + pixel.value() as usize
    });

    println!("average pixel brightness = {:.3}", sum as f64 / raw.len() as f64);
}

许可证

版权© 2015 David Cuddeback

MIT许可证下分发。

注意:使用此crate时,您的可执行文件将链接到libraw C库,该库可在LGPL版本2.1、CDDL版本1.0或LibRaw软件许可证下使用。

依赖项