xcf-rs

Crates.ioxcf-rs
lib.rsxcf-rs
version0.5.0
created_at2025-06-08 15:29:18.513682+00
updated_at2025-06-08 15:29:18.513682+00
descriptionA basic standalone GIMP XCF library in Rust.
homepage
repositoryhttps://github.com/mothsART/xcf-rs
max_upload_size
id1704986
size128,606
Jérémie Ferry (mothsART)

documentation

README

XCF File Reader

Latest Version

Designed for extracting layer and pixel data from XCF files.

I originally made this as part of an art pipeline for a game idea, as such it's missing support for a lot of features (I only needed to pluck pixel data from a few layers).

  • results are always returned in RGBA pixels, regardless of original format
  • supports RGB or RGBA images, but not grayscale or indexed
  • XCF files with better compression are not supported (there is an ignored failing test for this, should someone like to add support)

Contributions welcome.

Documentation

https://testing.developer.gimp.org/core/standards/xcf/

Use of

Example

extern crate xcf;
use xcf::Xcf;

fn main() {
    let mut rdr = File::open("untitled.xcf")
        .expect("Failed to open file.");
    let raw_image = Xcf::load(&mut rdr)
        .expect("Failed to parse XCF file.");

    // or simpler yet:
    let raw_image = Xcf::open("untitled.xcf")
        .expect("Failed to open and parse XCF file.");
}

Credits

This soft is initially a fork of https://github.com/shivshank/xcf-rs

Commit count: 107

cargo fmt