The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning. Learn more →
Top 15 C++ Drawing Projects
-
LibreCAD
LibreCAD is a cross-platform 2D CAD program written in C++17. It can read DXF/DWG files and can write DXF/PDF/SVG files. It supports point/line/circle/ellipse/parabola/spline primitives. The user interface is highly customizable, and has dozens of translations.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
pencil
Pencil2D is an easy, intuitive tool to make 2D hand-drawn animations. Pencil2D is open source and cross-platform. (by pencil2d)
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
LibreCAD_3
LibreCAD 3 is a next generation 2D CAD application written to be modular, with a core independent from GUI toolkits. Scripting is possible with Lua.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
We're thrilled to announce that LibreSprite is finally available for macOS! 📷📷 A big shoutout to u/Booga y u/FManga for making this possible! Download LibreSprite for macOS
LibreCAD, OpenSCAD (more script based and more for solids), FreeCAD.
Project mention: Some might not see how much work is/was to maintain xorg server | news.ycombinator.com | 2023-11-29can also be used in non-KDE X11 desktop environments.
which doesn't really explicitly say much, and in fact the only tool I could find that claimed to be able to support everything was ksnip, which seems to work fine with wlroots but beyond that https://github.com/ksnip/ksnip#known-issues outlines the situation well enough; KDE is at least only temporarily broken, but GNOME isn't going to improve because GNOME did that on purpose. Now, that readme says you can use xdg-desktop-portal, but I have a GNOME+Wayland machine on hand, and I couldn't get it to actually work. I think what's supposed to happen is that every time I do a screenshot it prompts for permission, which I wanted to verify so I could complain that that was totally unreasonable, but what actually happens is that it just fails, which is... not better. Oh, and while searching for solutions to that I found flameshot, but that just refuses to even run. So... maybe someday the portal solution will work; in the meantime, I feel comfortable describing the situation as Wayland not having a uniform working way of taking screenshots.
[0] In particular, so we can avoid the situation from X11 where a load of drawing primitives are baked in that nobody has any use for anymore.
I have a small TTF implementation that's in the neighborhood of that size and is open source. It's part of my canvas_ity single-header library [0] that's around 2300 LOC / 36 KB object size and implements a C++ version of most of the 2D HTML5 canvas spec [1].
The core implementation of the TTF parsing and drawing is in L1526-L1846 with another small bit at L3205-L3274 of src/canvas_ity.hpp.
It's something of a toy implementation that only supports western left-to-right text, and doesn't do any hinting at all, nor kerning, nor shaping. But it's enough to draw a basic "Hello world!" using any typical TTF file.
The test suite in test/test.cpp L84-304 embeds a few custom Base64-encoded TTF files. They're small and only have a few glyphs but they do exercise a number of interesting edge cases in the OpenType TTF spec [2]. Have a look at the HTML5 port of the test suite at test/test.html in different browsers to see how their canvas implementations render those fonts.
[0] https://github.com/a-e-k/canvas_ity
[1] https://www.w3.org/TR/2015/REC-2dcontext-20151119/
[2] https://standards.iso.org/ittf/PubliclyAvailableStandards/c0...
Previously Spectacle used the kImageAnnotator library for the annotation function, so when that library got cropping support Spectacle got it too. For better or worse the new UI no longer uses that library, so I'm guessing the Spectacle devs will have to add in cropping support manually now. No clue if there are plans for it unfortunately, but I assume if work gets started on it there will be an update on that bug report.
mainly i'm working on a pixel art editor: csprite written in C/C++...
C++ Drawing related posts
- Paint.net
- Rnote – An open-source vector-based drawing app
- Some might not see how much work is/was to maintain xorg server
- Her mit den Office ShortCuts
- Spectacle - cannot find cropping tools
- What's the equivalent for snipping tool in Mint?
- Any drawing app other than autocad na easy to access?
-
A note from our sponsor - WorkOS
workos.com | 25 Apr 2024
Index
What are some of the best open-source Drawing projects in C++? This list will help you:
Project | Stars | |
---|---|---|
1 | LibreSprite | 4,350 |
2 | LibreCAD | 4,053 |
3 | ksnip | 1,879 |
4 | pencil | 1,398 |
5 | Drawpile | 989 |
6 | TinyEngine | 955 |
7 | rmkit | 335 |
8 | canvas_ity | 319 |
9 | LibreCAD_3 | 296 |
10 | ragg | 170 |
11 | kImageAnnotator | 76 |
12 | csprite | 71 |
13 | diffusion-expert | 21 |
14 | TranquilFirmware | 17 |
15 | Arduino-Plotter | 11 |
Sponsored