#2d-graphics #graphics #gui #windows

pnte

2D Graphics library for Windows in Rust

8 releases

0.2.6 Aug 19, 2024
0.2.5 Jul 7, 2024
0.2.3 Jun 27, 2024
0.2.2 Mar 4, 2024
0.1.0 Dec 9, 2023

#158 in Graphics APIs

Download history 4/week @ 2024-07-14 171/week @ 2024-08-18 6/week @ 2024-08-25 38/week @ 2024-09-15 11/week @ 2024-09-22 5/week @ 2024-09-29

512 downloads per month

MIT license

580KB
2.5K SLoC

pnte

2D Graphics library for Windows in Rust

pnte is a Direct2D and DreictWrite wrapper.

Requirement

To use this library, CoInitializeEx must be called for each thread.

How to use simply

  1. Create a pnte::Context.
let ctx = pnte::Context::new(pnte::Direct2D::new()?)?;
  1. Create a render target.
let render_target = ctx.create_render_target(&window, (size.width, size.height))?;
  1. Draw.
ctx.draw(&render_target, |cmd| {
    let white = pnte::SolidColorBrush::new(&ctx, (1.0, 1.0, 1.0, 1.0))?;
    cmd.clear((0.0, 0.0, 0.0, 0.0));
    cmd.draw_text("pnte", (10.0, 10.0), &white)?;
})?;

License

This library is licensed under the MIT license.

Dependencies

~127MB
~2M SLoC