7 个版本 (4 个破坏性更新)
0.5.2 | 2022 年 8 月 26 日 |
---|---|
0.5.1 |
|
0.5.0 | 2019 年 1 月 12 日 |
0.4.0 | 2019 年 1 月 11 日 |
0.1.0 | 2018 年 12 月 27 日 |
#481 in 图像
每月 255 次下载
77KB
361 行
tiny_tiff
tiny_tiff
是 TinyTIFF C++ 库的包装器。它允许使用 uint、int 或 float 数据类型轻松地读取和写入未压缩的 TIFF 图像。
依赖项
git clone https://github.com/rngoodner/TinyTIFF.git
cd TinyTIFF
mkdir build
cdbuild
cmake..
make -j
sudomake install
文档
cargodoc --open
版权和许可
版权 2022 rngoodner
此库是免费软件;您可以在 MIT 或 APACHE-2.0 许可下重新分配它或修改它。
lib.rs
:
tiny_tiff
tiny_tiff
是 TinyTIFF C++ 库的包装器。它允许使用 uint、int 或 float 数据类型轻松地读取和写入未压缩的 TIFF 图像。
依赖项
git clone https://github.com/rngoodner/TinyTIFF.git
cd TinyTIFF
mkdir build
cdbuild
cmake..
make -j
sudomake install
概述
extern crate tiny_tiff;
use tiny_tiff::reader;
use tiny_tiff::writer;
// read
let tiff = reader::open("./tests/test_data/cell32.tif").unwrap();
let bits = reader::bits_per_sample(tiff, 0);
let width = reader::width(tiff);
let height = reader::height(tiff);
let size = width * height;
let mut buffer: Vec<f32> = vec![0f32; size as usize];
reader::sample_data(tiff, &mut buffer, 0);
reader::close(tiff);
// manipulate
for px in &mut buffer {
*px += 42f32;
}
// write
let tiff = writer::open("./tests/test_data/cell32_example.tif", bits, width, height).unwrap();
writer::write_image_float(tiff, &buffer);
writer::close(tiff, "cell32 + 42!");