15 个版本 (2 个稳定版)
新 1.0.2 | 2024 年 8 月 20 日 |
---|---|
1.0.0 | 2023 年 4 月 7 日 |
0.5.2 | 2023 年 4 月 6 日 |
0.4.0 | 2023 年 4 月 5 日 |
0.1.2 | 2023 年 1 月 2 日 |
#252 in 图像
每月 105 次下载
用于 spreadsheet-maker
140KB
374 行
Image Builder 是一个高级库,使用 image crate 作为引擎生成简单的 PNG 图像,但具有便利性和简单性。
文档
示例
下面的代码生成了 README.md 文件顶部的图像。
use std::fs;
use image_builder::{colors, FilterType, Image, Picture, Rect, Text};
fn main() {
let width = 600;
let height = 280;
let mut image = Image::new(width, height, colors::GRAY);
let roboto_bold = fs::read("fonts/Roboto/Roboto-Bold.ttf").unwrap();
image.add_custom_font("Roboto bold", roboto_bold);
image.add_rect(
Rect::new()
.size(width - 10, height - 10)
.position(5, 5)
.color(colors::PURPLE),
);
image.add_rect(
Rect::new()
.size(width - 30, height - 30)
.position(15, 15)
.color(colors::GRAY),
);
image.add_picture(
Picture::new("logo.png")
.resize(134, 83, FilterType::Triangle)
.crop(41, 143, 536, 332)
.position(233, 30),
);
image.add_text(
Text::new("Image Builder")
.size(90)
.font("Roboto bold")
.position(60, 125)
.color([0, 0, 0, 100]),
);
image.add_text(
Text::new("Image Builder")
.size(90)
.font("Roboto bold")
.position(55, 120)
.color(colors::PURPLE),
);
image.add_text(
Text::new("This image was built using this library.")
.size(30)
.position(80, 220)
.color(colors::ORANGE),
);
image.save("example.png");
}
依赖项
~14MB
~248K SLoC