liuzilu19 / svgpp

C++ SVG library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

SVG++ library 1.1

Please visit http://svgpp.org/ for description, tutorial and reference.

####About####

SVG++ library can be thought of as a framework, containing parsers for various SVG syntaxes, adapters that simplify handling of parsed data and a lot of other utilities and helpers for the most common tasks. Take a look at Tutorial to get the idea about what it is.

####SVG++ features####

  • Is a header-only library

  • Can be used with any XML parser

  • Compile time configured - no virtual functions

  • Minimal runtime overhead - you pay only for what you get

  • Has wide range of possible uses:

    • Fully functional, conforming SVG viewers
    • Simple in-app SVG rasterizers
    • Import modules of vector editing software
    • Implementing path-only input of SVG format with minimal efforts in any graphics or math software
  • Requires only Boost library itself (demo, tests and sample have their own requirements)

  • Compatible with C++03, but requires conforming implementation, due to heavy usage of templates

  • Supports any character type (char and wchar_t). Other (Unicode from C++11) were not tested, but should be ok.

####SVG 1.1 features covered by SVG++####

  • Path data - parsing, simplification
  • Transform list - parsing, simplification
  • Color, including ICC color - parsing
  • Lengths - highly configurable handling of SVG lengths, full support of all SVG length units
  • Basic shapes - optional conversion to path
  • Style attribute - parsing, taking in account differences in parsing presentation attributes and style properties
  • Automatic marker positions calculation
  • Viewport and viewbox handling

####SVG++ is NOT####

  • An SVG viewer or library that produces raster image from SVG (though C++ demo app included, which renders SVG with AGG, GDI+ or Skia graphics library)
  • Renders anything itself

About

C++ SVG library

License:Boost Software License 1.0


Languages

Language:C++ 96.7%Language:PHP 2.4%Language:CMake 0.7%Language:Python 0.2%