2011-10-15 14 views
5

Ho uno SVG con molti poligoni:Ritaglia e SVG scala in PNG usando ImageMagick, senza pixellation

https://github.com/barrycarter/bcapps/blob/master/sample-data/current-temps.svg

che assomiglia un po 'come questo:

enter image description here

Ritaglio questo e la conversione a PNG funziona correttamente:

convert -crop 100x100+200+150 current-temps.svg /tmp/exhb2.png 

enter image description here

ritaglio e il ridimensionamento, tuttavia, non riesce:

convert -crop 100x100+200+150 -scale 1000x750 current-temps.svg /tmp/exhb3.png 

enter image description here

Come faccio ImageMagick "zoomare" lo SVG prima di ritaglio?

(mi rendo conto ImageMagick può solo leggere, non scrivere, il formato SVG, ma dovrebbe ancora essere in grado di fare quello che voglio?)

Modifica/risolto:

Grazie, robermorales.

inkscape -z -e out4.png -w 1000 -h 1000 -a 200:200:400:400 current-temps.svg 

(per esempio) ha lavorato come un fascino.

Ho anche capito che la copia del SVG, modificando la linea di trasformare:

<g transform="scale(3,3) rotate(-90) translate(-90,180)"> 

e poi la conversione in formato PNG è un'altra soluzione.

risposta

6

Provare a fare la scala prima della coltura.

Tuttavia, farlo utilizzando inkscape cli è più semplice.

Ci scusiamo per nessun link, AFK

1

Non ritagliare SVG in PNG. È possibile utilizzare viewBox per ridefinire l'area di ritaglio e convertire quindi SVG in PNG nella soluzione più elevata possibile. Controlla questo post https://www.sarasoueidan.com/blog/svg-coordinate-systems/ spiega cos'è viewBox e avrai la mia idea.

0

corretta sintassi ImageMagick è quello di leggere l'input, poi ritagliare, quindi ridimensionare. Vedere http://www.imagemagick.org/Usage/basics/#why Anche se questo non è probabile il problema. Il problema è che -scale replicherà i pixel e quindi renderà il blocco. È necessario sostituire -scale con -resize. Sarà più agevole, ma sfocato per la quantità di ingrandimento richiesta. Provate questo comando:

convert current-temps.svg -crop 100x100+200+150 -resize 1000x750 exhb3.png 
Problemi correlati