Languages
[Edit]
EN

Inkscape - batch export / convert svg graphics to png from bash console

7 points
Created by:
Roseanne-Read
1365

Using Inkscape and Bash on Microsoft Windows it is possible to export many *.svg graphics to *.png in the following way.

 

Note: in the below scripts we use inkscape command described in this article.

Note: to know how to install Bash under Windows go to this article.

1. 1x1 size radio export script example

export-1x1.sh file:

#!/bin/bash

program="/C/Program Files/Inkscape/bin/inkscape.exe"
# program="/C/Program Files/Inkscape/inkscape.exe"

target="png-$1"

mkdir "${target}"

for i in *.svg
do
	"${program}" --export-type="png" --export-filename="${target}/${i}.png" -w $1 -h $1 "${i}"

    # "${program}" -z -e "${target}/${i}.png" -w $1 -h $1 "${i}"
done

Notes:

  • export-1x1.sh file should be placed in the *.svg graphics directory,
  • program variable should be updated with actual inkscape.exe path.

Running:

./export-1x1.sh 40

Note: 40 means the size of output graphics will be 40x40 px.

 

2. Export script to custom size example

export.sh file:

#!/bin/bash

# program="/C/Program Files/Inkscape/inkscape.exe"
program="/C/Program Files/Inkscape/bin/inkscape.exe"

target="png-${1}x${2}"

mkdir "${target}"

for i in *.svg
do
    "${program}" --export-type="png" --export-filename="${target}/${i}.png" -w "$1" -h "$2" "${i}"

	# "${program}" -z -e "${target}/${i}.png" -w "$1" -h "$2" "${i}"
done

Running:

./export.sh 40 50

Note: 40 50 means the size of output graphics will be 40x50 px.

References

  1. Bash - export *.svg to *.png under Windows 
Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.

Inkscape

Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join