Am Sonntag, 21. August 2005 22:05 schrieb Florian Dorpmueller: > >#!/bin/bash > >for filename in *.jpg > >do > > convert -scale 800x800 $filename small_$filename > >done > > > >exit 0 > > > >Das 800x800 sorgt dafür, dass Bilder maximal 800 Pixel breit bzw. hoch > >werden. So wird das Querformat _und_ das Hochformat der Bilder > >erhalten, z.B. 800x600 oder 600x800. Sehr nützlich für Fotos. > > > >Wenn du wirklich eine feste Größe haben willst, musst du glaube ich > >800!x600! nehmen, aber das weiß ich nicht mehr ganz genau. > > Jo klasse, genau soetwas habe ich gesucht!
convert 800x berechnet proportional die y-Dimension automatisch bzw. x600 die x-Dimension. Ich gehe davon aus, dass die bildwichtigen Teile zentral sind und mache folgendes per Script. Damit kann man jede beliebige Größe auf ein "Beamerformat" bringen, allerdings eben beschnitten. CHECKDIMENSIONY=`convert -resize 1024x "$QUALITYFILE" miff:- 2>/dev/null \ | identify -format "%h" -` if [ "$CHECKDIMENSIONY" -ge 768 ]; then CROPPOSITIONYBEAMER_768=$((($CHECKDIMENSIONY-768)/2)) convert -resize 1024x -crop 1024x768+0+$CROPPOSITIONYBEAMER_768 \ "$QUALITYFILE" "$BEAMER_768FILE" ... Soll ein Hochfomat zB nicht beschnitten sein, dann bietet sich folgendes an: convert -resize x768 "$QUALITYFILE" miff:- 2>/dev/null | composite -comment "$COMMENT" -quality 95 -gravity center - -size 1024x768 xc:black "$BEAMER_768FILE" Al