Last version: 0.21 - Last site update: 2020-06-10
libmsvg is a work in progress to make a minimal and generic C library for reading and writing SVG files.
SVG stand for Scalable Vector Graphics and it is a standard defined by the World Wide Web Consortium. See http://www.w3.org/Graphics/SVG/
Motivation. If you have a little C graphic program and you want to add read/write raster image capabilities, you can use libjpeg for the JPEG format or libpng for the PNG format. But, what if you want to read/write vector image files? The most widely used format for that is SVG, but there isn't a canonical C library for this format.
The problem. SVG is a very big and complex format so it is usual that libraries for manage SVG images are very big too and not generic. This problem is what libmsvg wants to address, it wants to be a generic SVG C library, and concentrate in a small subset of SVG to be useful. The current release is in a early stage, but it is usable now, and you are welcome to contribute if you want.
libmsvg is programmed in ANSI-C, so it must compile in every plattform, you only have to build the makefiles. We provide the makefiles for these three supported platforms:
libmsvg only depends of libexpat 1.2 ( http://www.jclark.com/xml/expat.html), but we include our own copy of the expat library, so there are no dependencies at all.
The famous Ghostscript tiger renderized using libmsvg and MGRX.
|Tar.gz format: libmsvg0021.tar.gz (384767 bytes)
Zip format: msvg0021.zip (421574 bytes)
|Tar.gz format: libmsvg0002.tar.gz (95452 bytes)
Zip format: msvg0002.zip (111347 bytes)
|Tar.gz format: libmsvg0001.tar.gz (73045 bytes)
Zip format: msvg0001.zip (87510 bytes)