Hi!
Habe mein Problem jetzt mit Hilfe ein paar Beispiele gelöst.
PHP-Code:
// $src = Quellpfad
// $dst = Zielpfad
// $w = Zielbreite
// $h = Zielhöhe
//Quellbild laden
$src_image = new Imagick();
$src_image->readImage($src);
//leeres, weißes JPEG-Bild erstellen. Quellmaße!
$image = new Imagick();
$image->newImage($src_image->getImageWidth(),
$src_image->getImageHeight(),
new ImagickPixel("white")
);
$image->setImageFormat("jpeg");
//Quellbild auf's Zielbild kopieren
$image->compositeImage($src_image, Imagick::COMPOSITE_OVER, 0, 0);
//Bildgröße ändern
$image->resizeImage($w, $h, Imagick::FILTER_LANCZOS, 0.9);
//Bild abspeichern
$image->setCompression(Imagick::COMPRESSION_JPEG);
$image->setCompressionQuality(85);
$image->writeImage($dst);
Das größte Problem war, dass die ganzen Beispiele bei mir (Ubuntu 7.10) nicht funktioniert haben. Ich hab das PHP5-Dev Paket installiert, das neueste ImageMagick selbst compiled, das aktuelle Imagick dann per PECL installiert und den apache neugestartet. Seit dem klappt alles wunderbar
Code:
sudo apt-get install php5-dev
sudo pecl install imagick
sudo /etc/init.d/apache2 restart