lib/svg-obj.js
function SVGObj(file, svg, config) {
	this.file				= file;
	this.id					= path.basename(this.file, '.svg');
  // this.newSVG     = ;
  // this.newSVG = new dom().parseFromString('<book><title>Harry Potter</title></book>');
  // this.newSVG = new dom().parseFromString(svg);
  // this.svg        = libxmljs.parseXml(svg);
  this.svg        = new XMLObject(svg);


  // console.log(this.svg);
  // console.log('-----------------------------------------');
  // console.log('-----------------------------------------');

  // console.log(this.newSVG);
  //

  // this.obj = new SVGToObject(svg);
  // res = this.obj.findAllNodes({name:'path'});
  // res = this.obj.findNode({attributes:'width'});
  // res = this.obj.findNode('@id');

  // this.obj.log();
  // var hans = obj.queryNode({name: 'path'});
  // var hans = obj.queryNodeAll({name: 'path'});

  // _.each(hans, function(node){
  //   console.log(obj.attribute(node, 'attributes'));
  // })


  // console.log('######################################################');
  // console.log('######################################################');
  // console.log();
  // console.log('hier', obj.queryNode('path'));
  //
  //
  // var select = xpath.useNamespaces({"svg": "http://www.w3.org/2000/svg"});
  // var nodes = xpath.select("//title/text()", this.newSVG).toString();
  // console.log('-----------------------------------------');
  // console.log(select("//svg:title/text()", this.newSVG)[0].nodeValue);
  // console.log(select("//svg:@", this.newSVG));

  // console.log(xpath.select("//svg", this.newSVG));

	this._config			= _.extend({
		maxwidth			: 1000,
		maxheight			: 1000,
		padding				: 0
	}, config);
	this._config.maxwidth	= Math.abs(parseInt(this._config.maxwidth || 0, 10));
	this._config.maxheight	= Math.abs(parseInt(this._config.maxheight || 0, 10));
	this._config.padding	= Math.abs(parseInt(this._config.padding, 10));

	var width				= this.svg.root().attr('width'),
	height					= this.svg.root().attr('height');

	this.width				= width ? parseFloat(width, 10) : false;
	this.height				= height ? parseFloat(height, 10) : false;

  // console.log('this.width',this.width);
  // console.log('this.height',this.height);
  // console.log('mywidth',parseFloat(this.obj.root().attr('width'),10));
  // console.log('myheight',parseFloat(this.obj.root().attr('height'),10));

}
function SVGObj(file, svg, config) {
	this.file				= file;
	this.id					= path.basename(this.file, '.svg');
  // this.newSVG     = ;
  // this.newSVG = new dom().parseFromString('<book><title>Harry Potter</title></book>');
  // this.newSVG = new dom().parseFromString(svg);
  // this.svg        = libxmljs.parseXml(svg);
  this.svg        = new XMLObject(svg);


  // console.log(this.svg);
  // console.log('-----------------------------------------');
  // console.log('-----------------------------------------');

  // console.log(this.newSVG);
  //

  // this.obj = new SVGToObject(svg);
  // res = this.obj.findAllNodes({name:'path'});
  // res = this.obj.findNode({attributes:'width'});
  // res = this.obj.findNode('@id');

  // this.obj.log();
  // var hans = obj.queryNode({name: 'path'});
  // var hans = obj.queryNodeAll({name: 'path'});

  // _.each(hans, function(node){
  //   console.log(obj.attribute(node, 'attributes'));
  // })


  // console.log('######################################################');
  // console.log('######################################################');
  // console.log();
  // console.log('hier', obj.queryNode('path'));
  //
  //
  // var select = xpath.useNamespaces({"svg": "http://www.w3.org/2000/svg"});
  // var nodes = xpath.select("//title/text()", this.newSVG).toString();
  // console.log('-----------------------------------------');
  // console.log(select("//svg:title/text()", this.newSVG)[0].nodeValue);
  // console.log(select("//svg:@", this.newSVG));

  // console.log(xpath.select("//svg", this.newSVG));

	this._config			= _.extend({
		maxwidth			: 1000,
		maxheight			: 1000,
		padding				: 0
	}, config);
	this._config.maxwidth	= Math.abs(parseInt(this._config.maxwidth || 0, 10));
	this._config.maxheight	= Math.abs(parseInt(this._config.maxheight || 0, 10));
	this._config.padding	= Math.abs(parseInt(this._config.padding, 10));

	var width				= this.svg.root().attr('width'),
	height					= this.svg.root().attr('height');

	this.width				= width ? parseFloat(width, 10) : false;
	this.height				= height ? parseFloat(height, 10) : false;

  // console.log('this.width',this.width);
  // console.log('this.height',this.height);
  // console.log('mywidth',parseFloat(this.obj.root().attr('width'),10));
  // console.log('myheight',parseFloat(this.obj.root().attr('height'),10));

}
function SVGObj ( file , svg , config ) { this . file = file ; this . id = path . basename ( this . file , '.svg' ) ; // this.newSVG     = ; // this.newSVG = new dom().parseFromString('<book><title>Harry Potter</title></book>'); // this.newSVG = new dom().parseFromString(svg); // this.svg        = libxmljs.parseXml(svg); this . svg = new XMLObject ( svg ) ; // console.log(this.svg); // console.log('-----------------------------------------'); // console.log('-----------------------------------------'); // console.log(this.newSVG); // // this.obj = new SVGToObject(svg); // res = this.obj.findAllNodes({name:'path'}); // res = this.obj.findNode({attributes:'width'}); // res = this.obj.findNode('@id'); // this.obj.log(); // var hans = obj.queryNode({name: 'path'}); // var hans = obj.queryNodeAll({name: 'path'}); // _.each(hans, function(node){ //   console.log(obj.attribute(node, 'attributes')); // }) // console.log('######################################################'); // console.log('######################################################'); // console.log(); // console.log('hier', obj.queryNode('path')); // // // var select = xpath.useNamespaces({"svg": "http://www.w3.org/2000/svg"}); // var nodes = xpath.select("//title/text()", this.newSVG).toString(); // console.log('-----------------------------------------'); // console.log(select("//svg:title/text()", this.newSVG)[0].nodeValue); // console.log(select("//svg:@", this.newSVG)); // console.log(xpath.select("//svg", this.newSVG)); this . _config = _ . extend ( { maxwidth : 1000 , maxheight : 1000 , padding : 0 } , config ) ; this . _config . maxwidth = Math . abs ( parseInt ( this . _config . maxwidth || 0 , 10 ) ) ; this . _config . maxheight = Math . abs ( parseInt ( this . _config . maxheight || 0 , 10 ) ) ; this . _config . padding = Math . abs ( parseInt ( this . _config . padding , 10 ) ) ; var width = this . svg . root ( ) . attr ( 'width' ) , height = this . svg . root ( ) . attr ( 'height' ) ; this . width = width ? parseFloat ( width , 10 ) : false ; this . height = height ? parseFloat ( height , 10 ) : false ; // console.log('this.width',this.width); // console.log('this.height',this.height); // console.log('mywidth',parseFloat(this.obj.root().attr('width'),10)); // console.log('myheight',parseFloat(this.obj.root().attr('height'),10)); }
SVG object constructor

@param {String} file		SVG file name
@param {String} svg		SVG XML
@param {Object} config	Configuration
@return {SVGObj}
SVG object constructor