Non hai menzionato il sistema operativo in esecuzione. Sto usando Ubuntu e sono stato in grado di usare librsvg2 con successo.
Se hai accesso a Ubuntu, ecco cosa puoi fare. Innanzitutto, installa librsvg2:
sudo apt-get install librsvg2-bin
Quindi, cd
nella directory che ha i tuoi SVG (assicurati che abbia solo SVG!) E usa un comando come il seguente:
for old in *; do
new="$(echo "$old" | sed -e 's/svg$/new.svg/')"
rsvg-convert "$old" -w 160 -h 160 -f svg -o "$new"
done
Ciò creerà un nuovo batch di SVG con dimensioni 200px per 200px e salvato come "nome-file-originale.new.svg"
Il calcolo delle dimensioni è alquanto confuso. Per convertire SVG in SVG, devi fare un po 'di matematica. Le opzioni "altezza" e "larghezza" in rsvg-convert usano pt, non px, in questi casi, quindi usa 80 se vuoi 100px, 120 se vuoi 150px e così via.
Puoi anche usare rsvg-convert per generare PNG. È molto meglio nel rasterizzare il file di ImageMagick, almeno nella mia esperienza. Si noti che è necessario passare -f
a png
, è necessario modificare il modello di salvataggio dell'output da 's/svg$/new.svg/'
a 's/svg$/png/'
e immettere la larghezza e l'altezza desiderate come valori di pixel.
for old in *; do
new="$(echo "$old" | sed -e 's/svg$/png/')"
rsvg-convert "$old" -w 200 -h 200 -f png -o "$new"
done