gpt4 book ai didi

rust - 在位图中画一条线(可能用 Piston )

转载 作者:行者123 更新时间:2023-11-29 07:53:15 25 4
gpt4 key购买 nike

我想在位图中画一条线,例如从像素 (10, 10) 到像素 (90, 90)。线条必须具有特定的宽度。

使用 Piston 图像,我可以绘制单个像素:

let mut image = ImageBuffer::<image::Rgb<u8>>::new(100, 100);
image.get_pixel_mut(5, 5).data = [255, 255, 255];
image.save("output.png");

但是没有画线的方法。

我想我必须为此使用 piston::graphics,但我找不到任何资源来实现它(任何示例都涉及一个提供图形工作上下文的窗口)。

最佳答案

除了上面的好答案:imageproc 中现在直接支持绘制线条和更多形状(甚至文本)库(另请参阅那里的示例):

extern crate image;
extern crate imageproc;

use image::{Rgb, RgbImage};
use imageproc::drawing::draw_line_segment_mut;

fn main() {
let mut img = RgbImage::new(100, 100);
draw_line_segment_mut(
&mut img,
(5f32, 5f32), // start point
(95f32, 95f32), // end point
Rgb([69u8, 203u8, 133u8]), // RGB colors
);
img.save("output.png").unwrap();
}

关于rust - 在位图中画一条线(可能用 Piston ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34440429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com