https://github.com/image-rs/canvas
An experimental allocated buffer suitable for image data (Rust library).
https://github.com/image-rs/canvas
image rust
Last synced: 9 months ago
JSON representation
An experimental allocated buffer suitable for image data (Rust library).
- Host: GitHub
- URL: https://github.com/image-rs/canvas
- Owner: image-rs
- Created: 2019-04-10T05:08:22.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2025-03-29T16:36:40.000Z (over 1 year ago)
- Last Synced: 2025-03-31T05:06:28.683Z (over 1 year ago)
- Topics: image, rust
- Language: Rust
- Homepage:
- Size: 541 KB
- Stars: 31
- Watchers: 17
- Forks: 3
- Open Issues: 3
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# image-canvas
Provides the definition of a *texel* trait and marker type, several buffer and
layout abstractions, and a color aware, flexible buffer on top.
- `texel` contains `image-texel`, the kernel of image buffer and element types
that are themselves free of policy. By that we mean, it's always possible to
access bytes directly and to convert to arbitrary layouts with minimal
reallocation overhead. [![texel-crates]](https://crates.io/crates/image-texel)
[![texel-docs]](https://docs.rs/image-texel)
- `canvas` contains `image-canvas`, defining color models and conversion to
provide an opinionated default within the layout framework of `image-texel`.
[![canvas-crates]](https://crates.io/crates/image-canvas)
[![texel-docs]](https://docs.rs/image-canvas)
- `drm` contains `image-drm`, a work-in-progress to provide native Rust types
mirroring each of those available through `libdrm` with the goal of
simplifying frame buffer interaction.
[texel-crates]: https://img.shields.io/crates/v/image-texel
[canvas-crates]: https://img.shields.io/crates/v/image-canvas
[texel-docs]: https://docs.rs/image-texel/badge.svg
[canvas-docs]: httpshttps://docs.rs/image-canvas/badge.svg
## I just want to see the goods
```bash
cargo run --example --release show-oklab
# Writes an image test.png
cargo run --example --release show-srlab2
# Another image test.png in another color space
```