#context #suitable #ppm #binary #parser #image #memory

micropnm

MicroPNM是一个轻量级的、无依赖的Rust库,用于解析二进制PPM图像文件。它设计用于最小内存使用,适用于嵌入式环境和WebAssembly。

1个不稳定版本

0.1.0 2023年5月4日

#954嵌入式开发

MIT 许可证

10KB
146

MicroPNM 🎨💻

Rust Crates.io GitHub issues GitHub pull requests

MicroPNM是一个用于Rust中解析PNM图像格式的小巧高效的库。🦀 它设计得非常简洁且高度优化,适用于资源受限的系统,🔍 使其适用于嵌入式环境和使用include_bytes!宏的WebAssembly。💪

目前仅支持读取二进制PPM (P6)。🚫

用法 🛠️

将以下内容添加到您的Cargo.toml文件中

[dependencies]
micropnm = "0.1.0"

在您的Rust代码中,可以这样使用它

use micropnm::PNMImage;

let raw_img = include_bytes!("./path/to/your/binary_image.ppm");
let ppm_img = PNMImage::from_parse(raw_img).unwrap();

// Get the image dimensions
let width = ppm_img.width();
let height = ppm_img.height();

// Get the maximum pixel value
let max_pixel = ppm_img.maximum_pixel();

// Get the image comment
let comment = ppm_img.comment();

// Get the RGB value of a pixel
let (r, g, b) = ppm_img.pixel_rgb(10, 20).unwrap();

最小分配 🧑‍💻

MicroPNM设计时考虑了最小内存使用。💭 这使其适用于嵌入式环境或WebAssembly模块。🕸️ PNMImage类型本身仅仅是原始图像数据字节的薄包装。💾

许可证 📜

此库采用MIT许可证。

无运行时依赖