GD 2 und ImageMagick beide schlecht ?

TTek

Mitglied
Hi

Also ich habe ein kleines Problem, ich wollte ein simples Galleryscript das Ordner ausliest und von den Bildern thumbs macht. Tja ich wollte zuerst die GD2 Libary nutzen, das klappte auch ganz gut aber dann merkte ich das GD2 einige Probleme mit einigen JPG Dateien hatte. Es konnte sie nicht umwandeln. Dann habe ich mir gedacht nimm ImageMagick..das klappte dann auch...bis wieder einige JPG-Dateien kamen die nicht umwandelbar waren, in besondere große Bilder im Bereich 3000x4000. Problem ist nun das ich nicht weiß was ich sonst noch machen soll :confused:
Kennt ihr vieleicht Möglichkeiten um solche Probleme zu lösen ?
 
Hallo,

bei solchen Dimensionen kann es leicht vorkommen, dass der Arbeitsspeicherbedarf beim Umwandeln zu groß wird. Bei den meisten Webspace-Anbietern, bei denen man sich einen Server mit mehreren anderen Kunden teilt, ist die Grenze auf 16MB oder noch weniger festgelegt. Fordert ein PHP-Skript mehr an, bricht es mit einer Fehlermeldung ab. Bei einer Bildgröße von 3000×4000 Pixeln und 24 Bit Farbtiefe belegen die Rohdaten alleine schon gute 34MB. Je nach Größe der zu erzeugenden Vorschaubilder wächst der Speicherbedarf nochmals an.

Wird denn eine Fehlermeldung beim Versuch, eine solche Datei zu bearbeiten, ausgegeben?

Grüße,
Matthias
 
Nein das Bild wird einfach nicht verkleinert. Sondern so wie es ist in den thumbnail Ordner geschoben...

Und hier mal ein Paar Daten des Bildes was nicht umgewandelt werden kann:

Dateigröße: 4,3 MB
Auflösung: 3813x5098x24b jpeg
 
Hallo!
Nein das Bild wird einfach nicht verkleinert. Sondern so wie es ist in den thumbnail Ordner geschoben...
Dann hat das Script warscheinlich irgendwo einen Fehler.

Und Dein Bild hat im Rohformat knapp 56 MB..... dass ist mit grosser Sicherheit viel zu viel für das, was in der php.ini eingestellt ist.
Normalerweise müsste das Script mit einer Fehlermeldung abbrechen.
Es ist aber auch gut möglich dass das Script so geschrieben ist (eigene Fehlerbehandlung), dass statt dessen etwas anderes passieren soll (z.b. nur eine Kopie des Originals im Thumb-Ordner ablegen).

Gruss Dr Dau
 
Das heißt wenn ich solche Bilder umwandeln möchte, müsste ich mir einen Rootserver holen wo ich selbst die php.ini einstellen kann :(
 
Zuletzt bearbeitet:
Ich wüsste jedenfalls keine andere Möglichkeit..... aber ich bin auch kein Profi.

Eine Alternative währe es evtl. dass der User (zusätzlich zum Original) eine schon verkleinerte Version des Bildes mit hochladen könnte.
Müsste ja keine bestimmte Grösse haben, aber eine maximale Grösse.
Halt max. so gross, dass PHP damit keine Probleme bekommt.

Bedenke aber auch dass PHP um so mehr "arbeiten" muss, um so grösser das Bild ist.
Da könnte also auch schnell mal die max_execution_time in die Quere kommen.
 
Hmm wäre es möglich, das Bild Portionsweise zu verarbeiten? Um nicht soviel Speicher auf einmal zu verbrauchen ?:confused:
 
Würde nichts bringen..... da zumindest für den ersten Schritt die Ursprungsdatei bearbeitet werden muss.

Ich bin grad dabei mich ein wenig mit Perl zu befassen..... da bin ich durch Zufall beim stöbern darüber gestolpert dass man mit Perl die Bilder wohl von Photoshop bearbeiten lassen kann.
Dieses setzt aber voraus dass der Server unter Windows läuft (sind Funktionen ausschliesslich für Windows) und Photoshop muss natürlich installiert sein.
Frage mich jetzt aber nicht nach Links oder so..... wegen der genannten Voraussetzungen hat mich das Thema nicht weiter interessiert (ich habe mir die Seite also auch nicht zu den Bookmarks gepackt).
Ich habe auch nicht geguckt ob es da irgendwelche Beschränkungen gibt.
 
Hallo,

eventuell wäre es auch möglich, die Umwandlung in einen externen Prozess auszulagern (zum Beispiel über die Kommandozeilenwerkzeuge von ImageMagick). Dazu müsste aber die Benutzung von [phpf]exec[/phpf] o.ä. erlaubt sein, was wohl nur bei den wenigsten Webspaceanbietern der Fall sein dürfte. Aber probieren kann man es ja mal.

Grüße,
Matthias
 
ne exec geht nicht...hmm naja dann wars das erstmal mit dem gallery projekt, hab das ja entwickelt damit ich nicht immer alles vorher umwandeln muss ;)
deswegen wäre es blöde wenn ich jetzt bevor ich es uploade nochmal verkleinern müsste ^^
 
Zurück