libmsvg

Last version: 0.72 - Last site update: 2022-12-16

Site index

About libmsvg
Documentation
Screenshots
Download
Software repository
Help & contributions

Links

SVG standard
Expat 1.2
DJGPP compiler
TDM-GCC compiler (Mingw)
MGRX graphics library

Contact

malfer at telefonica.net

About libmsvg

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.

Supported platforms

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:

Dependencies

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.


Render svg files with libmsvg

libmsvg is a generic library and can't render svg files by itself, it needs a graphic library to do the job. The distribution comes with two examples in the subdirectories mgrx and gd using the MGRX library and the GD library to render svg files.


Documentation


Screenshots

The famous Ghostscript tiger renderized using libmsvg and MGRX.

Download

Latest release

libmsvg 0.72
2022-12-12
  Tar.gz format: libmsvg0072.tar.gz (537920 bytes)
Zip format: msvg0072.zip (592906 bytes)
MD5 sums:   179356a81399d71424b3acda37f0c102 libmsvg0072.tar.gz
c9fd60e308bdcbee6f1d88e92f59de70 msvg0072.zip

Older releases

libmsvg 0.70
2022-08-01
  Tar.gz format: libmsvg0070.tar.gz (526273 bytes)
Zip format: msvg0070.zip (577612 bytes)
MD5 sums:   ce6fd7ba14a9a5f64a5f136079f001a9 libmsvg0070.tar.gz
9da1bc9cf6ef9c97875f542e9632152c msvg0070.zip
libmsvg 0.60
2022-07-01
  Tar.gz format: libmsvg0060.tar.gz (523631 bytes)
Zip format: msvg0060.zip (572948 bytes)
MD5 sums:   6a38e377e2f43eda8affe5b85c771b11 libmsvg0060.tar.gz
e88a4ef9d17a6f13b47d8e939fc21002 msvg0060.zip
libmsvg 0.50
2022-06-05
  Tar.gz format: libmsvg0050.tar.gz (386595 bytes)
Zip format: msvg0050.zip (431223 bytes)
MD5 sums:   30bff6017f2ec743dfe647b303c6a79c libmsvg0050.tar.gz
4095032d8394ea8e7a77e84a65b80faa msvg0050.zip
libmsvg 0.22
2022-05-03
  Tar.gz format: libmsvg0022.tar.gz (382161 bytes)
Zip format: msvg0022.zip (417393 bytes)
MD5 sums:   72a1ef6b7311cc53b7ed454dcb8b659a libmsvg0022.tar.gz
5c18978b9c1c826c26323255ded36875 msvg0022.zip
libmsvg 0.21
2020-06-10
  Tar.gz format: libmsvg0021.tar.gz (384767 bytes)
Zip format: msvg0021.zip (421574 bytes)
MD5 sums:   a7f0003b7a02e67d12d62aba8c527f21 libmsvg0021.tar.gz
0d735c8d9dc79363508458a9169565c9 msvg0021.zip
libmsvg 0.02
2010-12-11
  Tar.gz format: libmsvg0002.tar.gz (95452 bytes)
Zip format: msvg0002.zip (111347 bytes)
MD5 sums:   566a020d113763d782b97e53552ee708 libmsvg0002.tar.gz
7d31b9f08f02dca070ce69435a938c95 msvg0002.zip
libmsvg 0.01
2010-06-01
  Tar.gz format: libmsvg0001.tar.gz (73045 bytes)
Zip format: msvg0001.zip (87510 bytes)
MD5 sums:   99b78108f4bcd36b8ed5f86c729d498c libmsvg0001.tar.gz
22dd78cebf26db5c4d950ec5ce24e5d6 msvg0001.zip

Software repository

libmsvg is in github, so you can clone, fork or see the latest changes in the source:
http://github.com/malfer/libmsvg

Help and contributions

Do you need help or want to contribute?
Send me a mail:
malfer at telefonica dot net