C++ Drawing

Open-source C++ projects categorized as Drawing

Top 15 C++ Drawing Projects

  • LibreSprite

    Animated sprite editor & pixel art tool -- Fork of the last GPLv2 commit of Aseprite

  • Project mention: Great news, macOS users! 🍎 | /r/LibreSprite | 2023-05-19

    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

    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.

  • Project mention: Looking for a poor man's AutoCad | /r/civilengineering | 2023-07-05

    LibreCAD, OpenSCAD (more script based and more for solids), FreeCAD.

  • 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.

    WorkOS logo
  • ksnip

    ksnip the cross-platform screenshot and annotation tool

  • Project mention: Some might not see how much work is/was to maintain xorg server | news.ycombinator.com | 2023-11-29

    can 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.

  • pencil

    Pencil2D is an easy, intuitive tool to make 2D hand-drawn animations. Pencil2D is open source and cross-platform. (by pencil2d)

  • Drawpile

    A collaborative drawing program

  • TinyEngine

    Tiny OpenGL Wrapper / 3D Engine in C++

  • rmkit

    | remarkable app framework | https://rmkit.dev

  • 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.

    InfluxDB logo
  • canvas_ity

    A tiny, single-header <canvas>-like 2D rasterizer for C++

  • Project mention: Writing a TrueType font renderer | news.ycombinator.com | 2024-01-01

    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...

  • 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.

  • ragg

    Graphic Devices Based on AGG

  • kImageAnnotator

    Tool for annotating images

  • Project mention: Spectacle - cannot find cropping tools | /r/kde | 2023-05-02

    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.

  • csprite

    a simple pixel art editor

  • Project mention: My Guide To Get Into Computer Programming | /r/IndianTeenagers | 2023-05-29

    mainly i'm working on a pixel art editor: csprite written in C/C++...

  • diffusion-expert

    A software for drawing with stable-diffusion support

  • TranquilFirmware

    ESP32 firmware for custom kinetic drawing robots

  • Arduino-Plotter

    A simple Arduino-based DIY plotter using servo and stepper motors.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

C++ Drawing related posts

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
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com