Qualität von imagecopyresized
Bernd
- php
0 Sven Rautenberg0 Bernd
Hallo,
ich habe einen imageupload in PHP programmiert.
Die Qualität der Bilder die mit imagecopyresized erstellt wurden hat mich von Anfang an nicht überzeugt. Ziemlich pixelig.
Nun sollen diese Bilder in ein PDF eingebaut und ausgedruckt werden.
Da ist dann die Bildqualität nicht mehr zu ertragen.
Kann man irgendwie die Bildqualität bei der Funktion imagecopyresized einstellen ? DPI Angaben machen oder ähnliches ?
Oder gibt es eine bessere Möglichkeit die Größe der Bilder neu zu bestimmen ?
mfg
Bernd
Moin!
Die Qualität der Bilder die mit imagecopyresized erstellt wurden hat mich von Anfang an nicht überzeugt. Ziemlich pixelig.
Richtig. In den Benutzerkommentaren zu imagecopyresized stehen diesbezüglich einige Alternativen.
Nun sollen diese Bilder in ein PDF eingebaut und ausgedruckt werden.
Da ist dann die Bildqualität nicht mehr zu ertragen.
Warum nimmst du dann nicht das Originalbild?
Kann man irgendwie die Bildqualität bei der Funktion imagecopyresized einstellen ? DPI Angaben machen oder ähnliches ?
DPI-Angaben helfen nichts, weil die nicht mehr Pixel bringen.
Oder gibt es eine bessere Möglichkeit die Größe der Bilder neu zu bestimmen ?
imagecopyresampled - sofern das deine gdlib schon anbietet. Seit PHP 4.3.0 ist die gdlib 2.0 im Bundle mitgeliefert, die das kann. Ältere gdlib-Versionen kennen diese Funktion noch nicht.
- Sven Rautenberg
Hallo,
Warum nimmst du dann nicht das Originalbild?
Das ganze steht online und es gibt ca. 1000 Bilder.
Das würde erstens den Webspace ausreizen und außerdem irrsinnig lange dauern wenn dann von einem Objekt ein PDF erstellt werden würde.
imagecopyresampled - sofern das deine gdlib schon anbietet. Seit PHP 4.3.0 ist die gdlib 2.0 im Bundle mitgeliefert, die das kann. Ältere gdlib-Versionen kennen diese Funktion noch nicht.
Leider ist meine gd ziemlich alt und unterstützt imagecopyresampled nicht.
mfg
Bernd
Moin!
Warum nimmst du dann nicht das Originalbild?
Das ganze steht online und es gibt ca. 1000 Bilder.
Das würde erstens den Webspace ausreizen und außerdem irrsinnig lange dauern wenn dann von einem Objekt ein PDF erstellt werden würde.
Dann beschwere dich bitte nicht über die Qualität der Bilder im PDF, wenn du vorsätzlich Qualität wegwirfst.
Leider ist meine gd ziemlich alt und unterstützt imagecopyresampled nicht.
Dann nimm eine der (wesentlich langsameren) Varianten, die in PHP programmiert sind und unter http://www.php.net/imagecopyresized stehen.
- Sven Rautenberg
Hallo
Dann beschwere dich bitte nicht über die Qualität der Bilder im PDF, wenn du vorsätzlich Qualität wegwirfst.
Ich beschwer mich ja gar nicht, aber das ganze ist für einen Kunden der die Bilder von seiner Digicam auf den Server laden will mit dem admintool. Der hat keine Ahnung von Bildbearbeitung, und 1000 Bilder a 1 MB ist nunmal nicht drin auf dem Server.
Dann nimm eine der (wesentlich langsameren) Varianten, die in PHP programmiert sind und unter http://www.php.net/imagecopyresized stehen.
Hm ich versuche mich gerade da durchzuarbeiten, aber von einer Funktion
ImageCopyResampleBicubic gelich in der ersten Zeile habe ich noch nie was gehört und finde da auch nichts zu. Ist das mit einer GD Version kleiner 2.0 möglich ?
mfg
Bernd
Moin!
Ich beschwer mich ja gar nicht, aber das ganze ist für einen Kunden der die Bilder von seiner Digicam auf den Server laden will mit dem admintool. Der hat keine Ahnung von Bildbearbeitung, und 1000 Bilder a 1 MB ist nunmal nicht drin auf dem Server.
Wenn du die Bilder nicht ganz so klein machst, kriegst du mehr Qualität. :) Erwarte nur nicht von einem 100x100px Thumbnail, dass man es im A4 drucken und Qualität sehen kann. Die PDF-Konvertierung nimmt eben nochmals Qualität weg.
Dann nimm eine der (wesentlich langsameren) Varianten, die in PHP programmiert sind und unter http://www.php.net/imagecopyresized stehen.
Hm ich versuche mich gerade da durchzuarbeiten, aber von einer Funktion
ImageCopyResampleBicubic gelich in der ersten Zeile habe ich noch nie was gehört und finde da auch nichts zu. Ist das mit einer GD Version kleiner 2.0 möglich ?
Nein, diese Funktion wird als PHP-Code definiert. Einfach noch mal gut hingucken.
Außerdem sind einige Hinweise dort mit dem Patchen einer alten gdlib verbunden. Wenn du dein PHP nicht selbst neu kompilieren kannst, vergiß solche Hinweise gleich wieder. Denn dann könntest du auch einfach die gdlib 2.0 integrieren.
- Sven Rautenberg