2 个版本
0.1.1 | 2020 年 5 月 18 日 |
---|---|
0.1.0 | 2019 年 8 月 4 日 |
#40 在 #palette
12KB
281 代码行
JASC 颜色表文件读取器/写入器。
解析和字符串化包含任意数量颜色的颜色表文件。
JASC 颜色表文件遵循简单的格式
JASC-PAL
0100
$num_colors
$rgb...
颜色使用 rgb
crate 来表示。
示例
use std::io::Cursor;
use jascpal::{Palette, PaletteIndex, Color};
let cursor = Cursor::new(b"JASC-PAL\r\n0100\r\n2\r\n0 0 0\r\n255 255 255\r\n".to_vec());
let pal = Palette::read_from(cursor).unwrap();
assert_eq!(pal[PaletteIndex::from(0)], Color { r: 0, g: 0, b: 0 });
assert_eq!(pal[PaletteIndex::from(1)], Color { r: 255, g: 255, b: 255 });
let mut pal = pal;
pal[PaletteIndex::from(1)] = Color { r: 0, g: 255, b: 255 };
pal.add(Color { r: 255, g: 0, b: 0 });
assert_eq!(
pal.to_string(),
"JASC-PAL\r\n0100\r\n3\r\n0 0 0\r\n0 255 255\r\n255 0 0\r\n".to_string()
);
依赖
~1.2–1.9MB
~39K SLoC