Languages
[Edit]
EN

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

7 points
Created by:
Roseanne-Read
375

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 

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