Bilder mit Imagecache skalieren, ist nur bis zu einer bestimmten Größe möglich
am 21.11.2007 - 23:07 Uhr in
Hallo,
ich habe nach folgender Anleitung http://www.drupalcenter.de/handbuch/6250 eine Bildergalerie incl. dem Thickbox Modul erstellt.
Nach einigem Probieren, klappt das soweit auch recht gut mir ist nur folgendes aufgefallen.
Wenn ich Bilder mit einer Originalgröße bis ca. 1024 Breite hochladen, werden in folgenden Ordnern die jeweiligen Bilder in Display und Thumbnails angelegt und eingefügt.
/httpdocs/website/files/imagecache/Display/files/xy.jpg - 200 x 265
/httpdocs/website/files/imagecache/Square_Thumbnail/files/xy.jpg - 80 x 80
Allerdings werden Bilder die zum Beispiel eine Größe haben von 2576 x 1932 Pixel (direkt aus einer Kamera)
und die über das gleiche Prinzip hochgeladen werden nur in folgenden Ordner geschoben und es wird nichts skaliert.
/httpdocs/website/files/xy.jpg - 2576 x 1932
Es befindet sich nichts in den Ordnern "Display" und "Square_Thumbnails". Obwohl auf der Seite, nach dem hochladen ein Thumbnail in einer kleinen größe angezeigt wird, wird es nachher nicht mehr abgerufen, weil es nicht da ist.
Wenn man auf die Suche geht, findet man die Bilder unter folgendem Pfad und mit dem zusätzlichen "Square_Thumbnail" vor dem Namen des Bildes, welches man hochgeladen hat, was aber eigentlich nur "xy.jpg" heissen dürfte:
/httpdocs/website/tmp/Square_Thumbnailxy.JPG - 2576 x 1932
Hier noch meine Imagecache Einstellungen:
Voran liegt denn das? Das das ab einer bestimmten Größe nicht mehr in die richtigen Ordner verschoben wird und vor allem auch nicht mehr automatisch skaliert wird.
Ich möchte meine Bilder vorher nicht immer mit IrfanView kleiner machen müssen, bevor ich sie hochladen kann.
Zudem kommt noch dazu das die Original Bilder einfach hier liegen in voller Pracht und Größe:
/httpdocs/website/files/
Könnt Ihr mir da helfen?! Muss ich da eventuell in den Quellcode des Moduls "Thickbox" und dort etwas erhöhen?!
Hab da allerdings bis auf die Übersetzung im .module noch nicht genau nachgeschaut!
Greetz Sternenhaufen
- Anmelden oder Registrieren um Kommentare zu schreiben
Steht da irgendwas in den
am 22.11.2007 - 09:48 Uhr
Steht da irgendwas in den Logs? Hast du unter admin/settings/uploads eine maximale Größe eingestellt?
gruß pebosi
Hallo,
am 22.11.2007 - 10:46 Uhr
Hallo,
habe gerade die Datei imagecache.module am Wickel. Kann leider nicht Programmieren und verstehe nur Ansatzweise was dort drin steht. Manchmal kann man es ja ableiten, aber bis jetzt habe ich noch nichts gefunden.
Unter (admin/settings/uploads) ist folgendes eingestellt, jedoch passiert das auch bei Dateigröße von 833KB und die Pixelgröße wäre die beschriebenen 2500x1900 pixel.
Aber mir legt ja irgendetwas (vermutlich Imagecache) ein Bild in den Ordner tmp ab und bezeichnet es als Square_ThumbnailXY.JPG obwohl es erstens dort ja nicht mehr rein gehört und vor allem gar nicht so heissen darf!!!
In der file.inc Datei steht ab Zeile 562 folgender Inhalt:
// Transfer file in 1024 byte chunks to save memory usage.
if ($fd = fopen($source, 'rb')) {
while (!feof($fd)) {
print fread($fd, 1024);
}
fclose($fd);
}
else {
drupal_not_found();
}
exit();
}
Also wird es wohl besser sein, man erhöht trotzdem auf 2048 Bytes oder so?! Ich versuch das gleich mal....
EDIT: Hat nichts gebracht auf 2 MB zu erhöhen. Immer noch das gleiche Problem:
Keine Thumbs unter dem Pfad, Datei liegt im Ordner files.
Hier die Meldungen aus dem Log.
mime_content_type(files/imagecache/Square_Thumbnail/files/xy.JPG) [function.mime-content-type]: failed to open stream: No such file or directory in /var/www/vhosts/website/httpdocs/website/sites/all/modules/imagecache/imagecache.module in Zeile 214.
ilesize() [function.filesize]: stat failed for files/imagecache/Square_Thumbnail/files/Verschiedene Bilder 036.JPG in /var/www/vhosts/website/httpdocs/website/sites/all/modules/imagecache/imagecache.module in Zeile 220.
open(files/imagecache/Square_Thumbnail/files/xy.JPG) [function.fopen]: failed to open stream: No such file or directory in /var/www/vhosts/website/httpdocs/website/includes/file.inc in Zeile 562.
Gruß Sternenhaufen
Es ist wohl ein reines
am 22.11.2007 - 10:49 Uhr
Es ist wohl ein reines Pfadproblem.
mime_content_type(files/imagecache/Square_Thumbnail/files/xy.JPG) [function.mime-content-type]: failed to open stream: No such file or directory in
Existiert files/imagecache/Square_Thumbnail/files/ und sind Schreibrechte fuer den letzten Ordner files gesetzt?
Edit
Es gibt da eine Moeglichkeit, Rechte an Files zu setzen: oeffentlich oder private
Gibt es eventuell durch die Einstellung auf private ein Problem?
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Hallo,
am 22.11.2007 - 11:26 Uhr
Hallo,
es existieren alle Pfade, weil ich sie ja in meinem ersten Post angegeben habe.
Meine Einstellungen sind "öffentlich" gesetzt!
Es ist nicht nur ein Pfad Problem, sondern nochmal ganz kurz zusammengefasst:
Bilder bis zu einer Größe von 1000x1000 Pixel werden durch Imagecache skaliert. In je diese Ordner in folgender Größe.
/httpdocs/website/files/imagecache/Display/files/xy.jpg - 200 x 265
/httpdocs/website/files/imagecache/Square_Thumbnail/files/xy.jpg - 80 x 80
Bilder mit einer Größe von 2500 x 1900 Pixel werden nicht in diese beiden Ordner skaliert, sondern einfach unter dem Namen in folgenden Ordner abgelegt
/httpdocs/website/files/xy.jpg
In dem Ordnern
/httpdocs/website/files/imagecache/Display/files/
/httpdocs/website/files/imagecache/Square_Thumbnail/files/
befindet sich das ursprungs große Bild nicht!!
Es funktioniert nur, wenn das ein Bild eine maximale Größe von ca 1600 Pixel nicht überschreitet.
An Dateigröße orientiert sich Imagecache nicht.
Nachher findet also mein View kein Thumbnail, weil es nicht generiert wurde. Es ist nur über den alt="name" Tag erreichbar, da kein Thumb vorhanden.
Im erzeugten Quellcode allerdings stimmt der Pfad zu dem eigentlich erzeugten Thumbnail, es wurde nur nicht erstellt!!!!!
Greetz Sternenhaufen
OK, mit der Zusammenfassung
am 22.11.2007 - 11:43 Uhr
OK, mit der Zusammenfassung versteht es nun Jeder. :-)
Brainstorming an
- ein Modul"problem" mit der Zahl 1600 - ein default bzw. max Wert
- Kannst Du mal testhalber ein Bild groesser 1600 Pixel, aber mit sehr kleiner Dateigroesse, verwenden.?
Edit
An Dateigröße orientiert sich Imagecache nicht. <- Und was ist mit PHP? Gibt es eventuell ein Timeout bei zu langer Uploaddauer wegen zu grosser Dateigroesse?
Brainstorming aus
-------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Hi
am 22.11.2007 - 12:49 Uhr
Hi
;-) Also ich sitze hier an einer 16000 Leitung und brauche nicht unbedingt lange auf alles warten.
Mit der Dateigröße meine ich mein installiertes Imagecache! Das verhält sich eher so das es nach Pixelgröße Probleme verursacht.
Ist es eigentlich normal, dass Bilder über Thickbox nach dem anklicken nicht in der Größe z.B 2500 x 1900 angezeigt werden, sondern 941 x 706 ?! Ich meine klar kann nicht die volle Größe angezeigt werden, aber wo wird bestimmt, dass eine bestimmte Anzeigegröße nicht überschritten werden darf? Wo wird diese Größe für ein Original erstellt?
Okay wieder zu dem Thumbnailproblem:
1288 x 966 Ursprungsgröße und 801 KB - Thumbnail erzeugt
2000 x 1500 Ursprungsgröße und 1,57 MB - Thumbnail erzeugt
2300 x 1725 Ursprungsgröße und 300 KB - Thumbnail erzeugt
2400 x 1800 Ursprungsgröße und 300 KB - Kein Thumbnail
2576 x 1932 Ursprungsgröße und 833 Kb - Kein Thumbnail
2576 x 1932 Ursprungsgröße und 269 KB - Kein Thumbnail
Gruß Sternenhaufen
Soweit ich mal festgestellt
am 22.11.2007 - 13:21 Uhr
Soweit ich mal festgestellt habe werden Bilder bei der Anzeige durch Thickbox dem Fenster angepasst. Wenn Du bei einem Bild Das Browserfenster sehr klein machst wird noch nicht resized. Spaetestens die Folgebilder zeigt Thickbox in der Groesse dem kleinen Browserfenster angepasst. Das ist aber wohl 'ne reine Anzeigefunktion. Insofern hast Du eine Groessenbeschraenkung. Lass Dir mal bei einem klein angezeigten Bild die Eigenschaften des Bildes anzeigen.
------------
quiptime
Nur tote Fische schwimmen mit dem Strom.
Danke für die Info, nochmal
am 22.11.2007 - 13:42 Uhr
Danke für die Info, nochmal zu dem Problem "Thumbnails"
Interessant ist allerdings, dass der erzeugte Quellcode die Bilder an der richtigen Stelle sucht dort aber keine skaliert wurden, wenn größere Bilder hochgeladen werden wie oben in dem Beispiel, wann Thumbs erzeugt werden und wann nicht.
Dies Bild bekam kein Thumbnail, ist aber dennoch über den Namen des alt="2004.jpg" erreichbar.
<td class="view-grid-item">
<div class="view-item view-item-Galerie">
<div class="view-field view-data-node_data_field_bilder_field_bilder_fid">
<a href="website/website/files/2400.jpg" title="2400.jpg" class="thickbox" rel="bilder">
<img src="website/website/files/imagecache/Square_Thumbnail/files/2400.jpg" alt="2400.jpg" /></a>
/website/website/files/imagecache/Square_Thumbnail/files/2400.jpg
Hier liegt aber kein Thumbnail. Nur die, die unter einer Größe von 2400Pixel hochgeladen wurden, wo die Skalierung geklappt hat
Also wird Imagecache doch wohl Bilder ab einer bestimmten Größe nicht skalieren?!
Greetz Sternenhaufen
hi Sternenhaufen!
am 22.01.2008 - 12:55 Uhr
hi Sternenhaufen!
ich kann deine vermutung nur bestätigen, denn ich habe genau das gleiche problem. leider habe ich bisher aber keine lösung finden können.
du?
ich habe jetzt rausgefunden,
am 22.01.2008 - 18:29 Uhr
ich habe jetzt rausgefunden, dass bei mir der name der bilddatei keine sonderzeichen, wie z.b. "&" beinhalten darf.
lag nahe...
trifft das auch für dich zu?
Sofern du das
am 22.08.2008 - 12:20 Uhr
Sofern du das Transliteration Modul installiert hast und die theme_imagecache Funktion geändert hast, wie dies auf drupal.org beschrieben wird, solltest du mit den Sonderzeichen auch keine Probleme mehr haben..
Anbei der Link zur Beschreibung:
http://drupal.org/node/224913
MfG
SteffenR