# bilder drehen, kuickshow

## pieter_parker

hallo

da sind einige .jpg bilddateien die von der aufloesung und mb zahl kleiner gemacht werden sollen

die bilder sollen auch um 90 grad nach links gedreht werden

mit kuickshow hatte ich eben ein bild richtig gedreht gehabt (taste 7 auf den num pad) und verkleinert, gespeichert .. aber beim erneuten betrachten ist mir aufgefallen das es zwar richtig gedreht und kleiner ist, aber sehr plat gedrueckt aussieht

kuickshow macht da beim speichern wohl irgendwas falsch?

gibts in der konsole einen befehl um .jpg dateien zuverkleinern auf etwa 50% der orginal groesse und sie alle auch um 90 grad nach links zu drehen?Last edited by pieter_parker on Thu May 31, 2007 8:57 pm; edited 1 time in total

----------

## Earthwings

Na klar: imagemagick installieren und 

```
convert -resize 50% -rotate 270 Bild.jpg Gedreht-und-kleiner.jpg
```

----------

## pieter_parker

danke, funktioniert super

musste es garnicht installieren, war schon installiert :)

..hab da aber noch eine frage

jetzt sind es nur 4 dateien, spaeter einmal aber vielleicht ein paar dutzend

```

for i in `ls -1 *.JPG`; do convert -resize 50% -rotate 180 $i $i; done

```

so funktioniert es, er nimmt alle dateien und bearbeitet sie wie es sein soll, nur leider werden die alten orginal dateien dabei ueberschrieben

ich wuerde gerne das er die neuen veraenderten dateien irgendwie anders benennt

```

for i in `ls -1 *.JPG`; do "convert -resize 50% -rotate 180 $i $i_neu"; done

bash: convert -resize 50% -rotate 180 100_0833.JPG : command not found

bash: convert -resize 50% -rotate 180 100_0838.JPG : command not found

bash: convert -resize 50% -rotate 180 100_0839.JPG : command not found

bash: convert -resize 50% -rotate 180 100_0840.JPG : command not found

```

und

```

for i in `ls -1 *.JPG`; do convert -resize 50% -rotate 180 $i $i_neu; done

convert: missing an image filename `100_0833.JPG'.

convert: missing an image filename `100_0838.JPG'.

convert: missing an image filename `100_0839.JPG'.

convert: missing an image filename `100_0840.JPG'.

```

passt ihm irgendwie nicht ganz.. ich mache etwas falsch, nur was..

wuerde gerne das die neu erstellten dateien z.b. "_neu" an dem orgianl namen stehen haben (egal ob vor dem ".jpg" oder danach)

----------

## Earthwings

Bei "convert ..." mit Anführungsstrichen versucht bash, den gesamten Ausdruck als ein Befehl (Dateiname) zu interpretieren - das schlägt fehl. Bei $i_neu wird das _neu hinter das .jpeg angehängt, also dateiname.jpg_neu, und imagemagick weiß nicht, welches Dateiformat es benutzen soll. Folgendes geht:

```
for file in *.jpg

do

  convert -resize 50% -rotate 180 "${file}" "${file%.jpg}_neu.jpg"

done
```

Durch den Verzicht auf 'ls -1 ...' und die Anführungsstriche um die Dateinamen klappt das so auch für Dateien mit Leerzeichen im Dateinamen.

----------

## pieter_parker

cool .. super

funktioniert (:

----------

## slick

Vollständigkeitshalber weil es paßt: https://forums.gentoo.org/viewtopic-t-442336.html

----------

