piet
embedded-graphics
Our great sponsors
piet | embedded-graphics | |
---|---|---|
11 | 5 | |
1,225 | 857 | |
2.0% | 3.0% | |
4.9 | 5.7 | |
12 days ago | 25 days ago | |
Rust | Rust | |
Apache License 2.0 | Apache License 2.0 |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
piet
- Cairo – Open-Source 2D Graphics Layer/API with Fonts and Many Back-Ends
-
A simple 2d graphic library
You can even check https://github.com/linebender/piet and https://github.com/RazrFalcon/tiny-skia. They are pure rust libraries. Skia as a whole is a big binary to add.
-
Druid, a Rust-native UI toolkit, released v0.8 after two years of work by 80 contributors.
First, at the deepest level, we are moving away from Piet, which is a cross-platform 2D graphics abstraction. Under the hood it uses whatever the standard OS API is. Instead we will be using Vello which we have been building as a research project for years already. It is starting to near its v0.1, which is very exciting. Fundamentally it is a novel GPU accelerated 2D rendering engine with a strong focus on performance. It is not ready for benchmarks yet, but we're confident it will deliver. If you're curious, you can check out the Vello roadmap for 2023.
-
What 2D graphics library would you most recommend?
you can use piet, although that is more of an abstraction over existing, platform-dependent libraries. So not really pure rust, but definitely cross-platform.
-
Piet-GPU Progress: Clipping
Piet is the backend for the Druid UI framework. It is indeed cross-platform. The SVG backend looks like it would work without an OS, but I'm not sure the value of a GUI toolkit without an OS anyway :)
https://github.com/linebender/piet#backends
https://github.com/linebender/druid/tree/master/druid-shell/...
-
Looking for an image manipulation library that can add text to images. (and has documentation for it)
Piet can render text. You can use Piet_common with the BitMapTarget to generate images Here is an example.
-
Simple graphics library using software rendering?
Piet (https://github.com/linebender/piet) should work.
-
What Graphics Library to use?
So the 3 I'm looking at right now are 1. druid 1. piet 1. bevy
-
Rust GUI: Introduction, a.k.a. the state of Rust GUI libraries (As of January 2021)
It relies on piet 2D graphic library; on Linux that means GTK/Cairo 2D primitives
-
Patrick Walton heading up Facebook's Rust team
You may be interested in taking a look at piet!
embedded-graphics
-
How to build GUI for custom LCD screen connected to an Arduino Board?
Even if one used embedded-graphics, which would't require a line buffer, 8k is probably not enough RAM for the stack of a non-trivial Rust program. At least my even fairly simple RTIC programs that run fine in the 160k of a Feather M4 do not run at all in the 32k of a Feather M0.
-
New crate for embedded-graphics: U8g2-fonts (feedback desired)
I rewrote the font subsystem of U8g2 in pure Rust, introducing a large number of fonts to embedded-graphics.
-
What Graphics Library to use?
Another project I've used is embedded-graphics which is useful if your target has more limited resources: https://github.com/embedded-graphics/embedded-graphics
-
Debian Running on Rust Coreutils
We use it a bit for https://github.com/embedded-graphics/embedded-graphics and I have to say I love it. It's just the right balance between configuration variables/constants and "a folder full of bash scripts". I highly recommend giving Just a try.
What are some alternatives?
areweguiyet - A website built for the Rust community
min-sized-rust - 🦀 How to minimize Rust binary size 📦
egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native
samurai - ninja-compatible build tool written in C
orbtk - The Rust UI-Toolkit.
druid - A data-first Rust-native UI design toolkit.
build2 - build2 build system
vgtk - A declarative desktop UI framework for Rust built on GTK and Gtk-rs
Rust-for-Linux - Adding support for the Rust language to the Linux kernel.
Azul - Desktop GUI Framework
fancy-regex - Rust library for regular expressions using "fancy" features like look-around and backreferences