canvas
rustybuzz
Our great sponsors
canvas | rustybuzz | |
---|---|---|
9 | 9 | |
1,411 | 452 | |
- | - | |
9.0 | 9.4 | |
15 days ago | about 1 month ago | |
Go | Rust | |
MIT License | MIT License |
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.
canvas
-
Canvas vector graphics update: rich text and path boolean operation support
I wanted to share a recent large update to https://github.com/tdewolff/canvas, which is a vector graphics library written in Go to create images, PDFs, SVGs, OpenGL, etc. using vector drawing operations. Especially I wanted to show two new exciting features:
- Pixie – A full-featured 2D graphics library for Nim
-
Processing equivalent in GoLang
https://github.com/tdewolff/canvas/blob/master/examples/opengl/main.go can draw primitves but i think it would be a bit hard to do event based animation
-
tdewolff/canvas: vector graphics in Go (mayor update)
canvas has a focus on using state-of-the-art algorithms regarding numerical approximations, see https://github.com/tdewolff/canvas#articles for a list of publications used in this library
I see, you'd like to specify the exact output pixel size for the rasterizers? To be honest, the floats are being multiplied and rounded, so given a set of canvas dimensions in mm and a DPMM should be fine in your case. In any case, I've opened an issue to calculate the resulting DPMM automatically to get a certain pixel width and height: https://github.com/tdewolff/canvas/issues/78
Yes! See https://github.com/tdewolff/canvas/tree/master/examples/gonum-plot for an example using gonum-plot. You should be able to plug-and-play to use the canvas library!
rustybuzz
- Cosmic Text: Pure Rust multi-line text handling
-
Is coding in Rust as bad as in C++? A practical comparison
I understand that this may sound harsh, but I also ported two (far bigger) codebases from C++ to Rust: rustybuzz and tiny-skia. Both of which are production -ready and not just prototypes. And mine not only do not use pointers, but also barely use unsafe in general.
-
Looking for good sources on incremental rewrites to Rust of portions of a C++ codebase. Is this a feasible approach?
You could also take a look at the history of this repository: https://github.com/RazrFalcon/rustybuzz
-
Is There An Algorithm To How Computer Cursors Highlight Text?
harfbuzz is a popular library for text rendering. You may also want to check out rustybuzz, a small subset of harfbuzz ported to Rust with pretty great documentation.
- Pixie – A full-featured 2D graphics library for Nim
-
Question: Expected webrender impact, or influence, on emacs redisplay
Use allsorts or rustbuzz for text shaping
- Text Rendering w/ HarfBuzz, FreeType and OpenGL
-
Speedy2D: Easy-to-use library for graphics, text, and input events
Yeah Allsorts looks interesting, and rustybuzz is another option. I haven’t tried either yet, though.
What are some alternatives?
fontdue - The fastest font renderer in the world, written in pure rust.
Speedy2D - Rust library for hardware accelerated drawing of 2D shapes, images, and text, with an easy to use API.
svgo - Go Language Library for SVG generation
gg - Go Graphics - 2D rendering in Go with a simple API.
tiny-skia - A tiny Skia subset ported to Rust
generative-art-in-go - A companion source code repository to the book "Generative Art in Go"
go-cairo - Go binding for the cairo graphics library
bgracontrols - 🆗 BGRA Controls is a set of graphical UI elements that you can use with Lazarus LCL applications.
swash - Font introspection, complex text shaping and glyph rendering.
resize - Pure golang image resizing
imaginary - Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing
imagick - Go binding to ImageMagick's MagickWand C API