2个版本
0.1.3 | 2023年4月30日 |
---|---|
0.1.2 | 2023年4月25日 |
0.1.1 |
|
0.1.0 |
|
#756 in 图像
每月 45次下载
15KB
250 代码行
围绕minifb的包装,使打开和管理窗口尽可能简单,使用十六进制RGB而不是原始的u32。
这是一个示例代码,将生成一个UV坐标图
use miniwrap::*;
fn main() -> Result<(), WinErr> {
let mut window = window!(?255, 255, "Window", "FFFFFF");
//iterates with the value and position
for (_, pos) in window.iter() {
let r = to_hex2(pos.0 as u8).unwrap();
let g = to_hex2(pos.1 as u8).unwrap();
let string = format!("{r}{g}00");
window.set(pos, &string)?;
}
//pressing escape will close the window
loop {
window.update();
}
}
lib.rs
:
围绕[minifb]的包装,使窗口管理尽可能简单,使用十六进制RGB而不是原始的u32。
窗口元素(如缓冲区和尺寸)在[WindowContainer]结构中链接在一起。要使窗口保持活动状态,请在循环中调用update()。可以通过按ESC键进行内置的优雅退出。
let window = window!(?500, 500, "Window", "FFFFFF");
loop {
window.update();
}
以下是一个从像素坐标生成的UV图的示例
let window = window!(?500, 500, "Window", "FFFFFF");
//iterates with the value and position
for (_, pos) in window.iter() {
let r = to_hex2(pos.0 as u8).unwrap();
let g = to_hex2(pos.1 as u8).unwrap();
let string = format!("{r}{g}00");
window.set(pos, &string)?;
}
//pressing escape will close the window
loop {
window.update();
}
注意:使用十六进制转换:接受十六进制的函数将接受一个 &str 以方便起见,但返回十六进制的函数将返回一个[String]。
依赖关系
~0.4–2.5MB
~43K SLoC