baptistapedro / lunasvg

lunasvg is a standalone SVG rendering library in C++

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Releases License Build Status

LunaSVG - SVG rendering library in C++

LunaSVG

Example

#include <lunasvg.h>

using namespace lunasvg;

int main()
{
    auto document = Document::loadFromFile("tiger.svg");
    auto bitmap = document->renderToBitmap();

    // do something useful with the bitmap here.

    return 0;
}

Features

  • Basic Shapes
  • Document Structures
  • Coordinate Systems, Transformations and Units
  • SolidColors
  • Gradients
  • Patterns
  • Masks
  • ClipPaths
  • Markers
  • StyleSheet

TODO

  • Texts
  • Filters
  • Images

Build

git clone https://github.com/sammycage/lunasvg.git
cd lunasvg
mkdir build
cd build
cmake ..
make -j 2

To install lunasvg library.

make install

Demo

While building lunasvg example it generates a simple SVG to PNG converter which can be used to convert SVG file to PNG file.

Run Demo.

svg2png [filename] [resolution] [bgColor]

Projects Using LunaSVG

Support Me

If you like the work lunasvg is doing please consider a small donation :

Donate Donate Sponsor

About

lunasvg is a standalone SVG rendering library in C++

License:MIT License


Languages

Language:C++ 90.9%Language:C 7.7%Language:CMake 0.9%Language:Dockerfile 0.5%