node-rsvg

Parse SVG files and render them as PNG, PDF, SVG, or raw memory buffer images.

  • Owner: walling/node-rsvg
  • Platform:
  • License:: MIT License
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Node.JS Binding for LibRSVG

LibRSVG is a SVG rendering library, which parses SVG files and renders them in various formats. The formats include:

  • PNG
  • PDF
  • SVG
  • Raw memory buffer image

Build Status

Basic Usage

Here is a simple example. Look in index.js for more documentation.

var Rsvg = require('rsvg').Rsvg;
var fs = require('fs');

// Create SVG render instance.
var svg = new Rsvg();

// When finishing reading SVG, render and save as PNG image.
svg.on('finish', function() {
  console.log('SVG width: ' + svg.width);
  console.log('SVG height: ' + svg.height);
  fs.writeFile('tiger.png', svg.render({
    format: 'png',
    width: 600,
    height: 400
  }).data);
});

// Stream SVG file into render instance.
fs.createReadStream('tiger.svg').pipe(svg);

Installation

First install the LibRSVG library and header files. Usually you have to look for a development package version. You must also have a functioning build tool chain including pkg-config. You can find instructions for different operating systems below. After that, you simply run:

npm install rsvg

Library versions known to work:

  • LibRSVG 2.26+
  • Cairo 1.8.8+

Ubuntu:

sudo apt-get install librsvg2-dev

RedHat / OpenSUSE:

sudo yum install librsvg2-devel

Mac OS X:

brew install librsvg

If, after installing LibRSVG through homebrew you are experiencing issues installing this module, try manually exporting the package config with this command:

export PKG_CONFIG_PATH=/opt/X11/lib/pkgconfig

Then try reinstalling this module. For further information, see this thread.

Windows:

N/A; pull requests are accepted!

Main metrics

Overview
Name With Ownerwalling/node-rsvg
Primary LanguageC++
Program languageJavaScript (Language Count: 4)
Platform
License:MIT License
所有者活动
Created At2013-11-29 15:18:56
Pushed At2014-05-19 10:46:00
Last Commit At2014-05-19 12:45:27
Release Count12
Last Release Namev0.2.5 (Posted on 2014-05-19 12:45:41)
First Release Namev0.1.0 (Posted on )
用户参与
Stargazers Count99
Watchers Count7
Fork Count48
Commits Count50
Has Issues Enabled
Issues Count10
Issue Open Count8
Pull Requests Count1
Pull Requests Open Count1
Pull Requests Close Count0
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private