"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Imagemagick Resize ?

Moesli 11.03.2009 - 21:33 2626 5
Posts

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
ich möchte mit convert Bilder batchresizen:


Code:
#bin sh  
mkdir klein  
for i in *.jpg ; do convert $i -resize 400×300 klein/$i ; done


mein problem ist, dass nicht alle bilder im querformat sind d.h. ich will die lange Seite 400 und das Verhältniss beibehalten.

kann mir jemand weiterhelfen ?
Bearbeitet von Moesli am 12.03.2009, 14:17

fatmike182

Agnotologe
Registered: Oct 2005
Location: VIE
Posts: 4223
hab davon keine Ahnung, in php das aber schon oft gemacht.

Ich nehm an, du kannst per bash schaun, ob die Breite > Höhe ist, oder?
Würde das dann folglich mit einer if-Bedingung machen

COLOSSUS

Administrator
GNUltra
Avatar
Registered: Dec 2000
Location: ~
Posts: 12070
Imagemagick macht das mit "-resize" afaik automatisch.

that

Hoffnungsloser Optimist
Avatar
Registered: Mar 2000
Location: MeidLing
Posts: 11338
http://www.imagemagick.org/script/c...ng.php#geometry

Falls nicht, hilft vielleicht "@12000"

noledge

CWNE #540
Avatar
Registered: Apr 2001
Location: ::1
Posts: 6837
ich verwende immer 'widthxheight>' zweimal mit den "langen" werten, falls hoch- und querformat gemischt ist. da die angabe ein maximum ist, und die ratio beibehalten wird, macht das genau das richtige, zB:

convert IMG_1695.JPG -resize '500x500>' img_klein.jpg

ein 2000x1000 grosses bild wird damit 500x250. ein 1000x2000 grosses bild wird 250x500.

das > ist dafür, dass er das nur resized, wenns auch wirklich grösser ist - dh, dass er ein kleineres image nicht aufbläst. ein 200x400 bild bleibt also 200x400.

Moesli

goes Linux
Avatar
Registered: Sep 2002
Location: Salzburg
Posts: 1328
yes das wars :) - nette Überlegung !

thx => solved
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz