GRASS vector export to Inkscape: Difference between revisions

From GRASS-Wiki
Jump to navigation Jump to search
(→‎What is Inkscape: a few English grammar changes--nothing substantial.)
Line 2: Line 2:


== What is Inkscape ==
== What is Inkscape ==
Inkscape [http://www.inkscape.org Inkscape] is a free vector graphics program. The native data format is 'svg' which means 'scaleable vector graphics'. The only problem is that there is no direct svg export module in GRASS. But there is a shapefile to svg converter [http://www.carto.net/papers/svg/utils/shp2svg/ shp2svg converter].
[http://www.inkscape.org Inkscape] is a free vector graphics program. The native data format is 'svg' which means 'scalable vector graphics'. The only problem is that there is no direct svg export module in GRASS. But there is a shapefile to svg converter [http://www.carto.net/papers/svg/utils/shp2svg/ shp2svg converter].


Inkscape uses a coordinate system which represents the final map output (i.e. 210mm x 297mm for A4). Therefore a scaling of the geographic coordinate system is needed. I've get good results from a lat/long region with the following command:
Inkscape uses a coordinate system which represents the final map output (i.e. 210mm x 297mm for A4). Therefore a scaling of the geographic coordinate system is needed. I've get good results from a lat/long region with the following command:
Line 10: Line 10:
You can also use the scale 1 and adept the transformation in incscape (scale(100)).
You can also use the scale 1 and adept the transformation in incscape (scale(100)).


If you wan't to import several files into Inkscape you'll have to place them all at the same place. To do this, use the XML-Editor from Inkscape (View->XML Editor) and check that the transformation is the same for all object (for example: 'transform translate(-7400,1850)')
If you want to import several files into Inkscape you'll have to place them all at the same place. To do this, use the XML-Editor from Inkscape (View->XML Editor) and check that the transformation is the same for all objects (for example: 'transform translate(-7400,1850)')


== Samples ==
== Samples ==

Revision as of 04:18, 22 July 2006

What is Inkscape

Inkscape is a free vector graphics program. The native data format is 'svg' which means 'scalable vector graphics'. The only problem is that there is no direct svg export module in GRASS. But there is a shapefile to svg converter shp2svg converter.

Inkscape uses a coordinate system which represents the final map output (i.e. 210mm x 297mm for A4). Therefore a scaling of the geographic coordinate system is needed. I've get good results from a lat/long region with the following command:

 ogis2svg.exe --input yourinputShapeFile --output youroutputfile.svg --roundval 0.00001 --scale 0.01

You can also use the scale 1 and adept the transformation in incscape (scale(100)).

If you want to import several files into Inkscape you'll have to place them all at the same place. To do this, use the XML-Editor from Inkscape (View->XML Editor) and check that the transformation is the same for all objects (for example: 'transform translate(-7400,1850)')

Samples

A sample file can be found here: Inkscape demo map

As you see, I haven't figured out yet how I could use an geographic grid in Incscape, so that I could add a point or line at specified coordinates. So if anybody has a clue....

More tips on how to use SVG for map layouts

 I prefer to setup my Grass vectors in QGIS print composer (layers,
 labels, legend, scale and many more nice stuff), print that as SVG and
 then load into Inkscape for some fine-tunning.
 Maciek