3 个版本
0.1.2 | 2024 年 8 月 4 日 |
---|---|
0.1.1 | 2024 年 8 月 3 日 |
0.1.0 | 2024 年 8 月 3 日 |
#411 在 图像
每月 318 次下载
1MB
722 行
将一个图像的调色板复制到另一个图像
使用不同的颜色空间和统计方法从源图像复制调色板到目标图像。
示例
let source = ImageReader::open("./assets/dwl.jpeg")
.unwrap()
.decode()
.unwrap();
let source_dimensions = source.dimensions();
let destination = ImageReader::open("./assets/twl.jpeg")
.unwrap()
.decode()
.unwrap();
let destination = destination.to_rgb8();
let destination_dimension = destination.dimensions();
let src = source.as_bytes();
let target = destination.as_bytes();
let mut dst = Vec::from(target);
copy_palette_rgb(
src,
source_dimensions.0,
source_dimensions.1,
& mut dst,
destination_dimension.0,
destination_dimension.1,
1.,
TransferColorspace::OKLAB,
)
.unwrap();
image::save_buffer(
"converted_oklab.jpg",
& dst,
destination_dimension.0,
destination_dimension.1,
image::ExtendedColorType::Rgb8,
)
.unwrap();
结果示例