JOOM::GALLERY::FORUM

Archiv => Module => Thema gestartet von: gordon am 03-01-2011 01:05:32



Titel: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 03-01-2011 01:05:32
Hallo, ich bin der Gordon und soll hier singen... nein, das tu ich euch nicht an, aber ich hab ein anderes Problem:
Am deutlichsten wird es, wenn ich es gleich verlinke: auf http://www.gatillo.de läuft eine JoomImages-Standardansicht mit aktivierter Dynamischer Thumbnailgröße. Die Quelle sind die Thumbnails der JoomGallery.
Wie zu sehen, ist hier der Hintergrund stets schwarz. Das will ich ändern, wenn möglich transparent, aber auch eine #161716 würde mir reichen.
Das wohl naheliegendste war die Datei /helper/resize.php, in der ich die Verkleinerungsfunktion vermutete. Die habe ich umgeschrieben, sodass die Bilder erst mit dem hexadezimalen Hintergrund #161716 gefüllt werden, bevor die gecroppten Bilder in die neuen Thumbnails eingefügt werden. Mir scheint es jedoch so zu sein, dass diese Funktion überhaupt nicht genutzt wird und die Thumbnails für das Modul anderweitig erzeugt werden, nur wie?

Die JG hat Version 1.5.6.1, JI ist Version 1.5.6.

Mfg, Gordon


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: Claudia E. am 03-01-2011 06:19:06
Hallo Gordon,

willkommen im Forum und danke für deine Rücksichtnahme. ;-))

Joomla in Version 1.5.6 hat mehrere Sicherheitslücken.
Außerdem benötigt die JoomGallery ein aktuelles Joomla.
Nach dem Update könnte bereits alles wie gewünscht funktionieren.


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 03-01-2011 08:08:41
Das Joomla Core Update von 1.5.15 auf 1.5.22 ist durch, aber das Problem hab ich weiterhin.
So langsam glaube ich, die Bilder werden nicht durch JoomImages erzeugt, sondern durch die JG selbst.
Die auf dem Server gespeicherten Bilder haben aber keinen schwarzen Rand.

Ich verzweifle ^^


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 03-01-2011 10:00:57
So, ich habe die dynamische Größenänderung erstmal deaktiviert und dafür einen CSS-Rahmen definiert, sodass ich mit dem aktuellen Ergebnis fast zufrieden bin.
Ich würde das ganze jetzt noch nicht als gelöst markieren wollen, da ich eigentlich nur das Problem umgangen habe und noch immer gern wissen würde, welche Funktion beim Aktivieren der Dynamischen Thumbnailgröße für die Anzeige genutzt wird.

Trotzdem Danke, ich hab jetzt immerhin ein Joomla-Update drauf, dachte immer das seh ich auf der Startseite wenn es ne neue Core-Version gibt ;)


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: aHa am 04-01-2011 19:39:03
Hallo Gordon,
es stimmt, das JoomImages in der Version ruft eine Funktion der JoomGallery auf.
Du findest Sie in dieser Datei:
/components/com_joomgallery/models/image.php
in der Funktion cropImage ab Zeile 493

Der tatsächliche Crop wird in den Zeilen 584 und 585 vorgenommen.
Code
$cropimg = imagecreatetruecolor($cropwidth, $cropheight);
imagecopy($cropimg, $src_img, 0, 0, $offsetx, $offsety, $cropwidth, $cropheight);

Zur Sicherheit nachgefragt:
Hattest Du wegen des schwarzen Rahmens einen solchen Effekt wie hier?
http://www.joomlatests.de/index.php?view=category&catid=1&option=com_joomgallery

Gruß
Andreas


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 04-01-2011 22:41:41
Jawoll, genau das war das Problem, und Danke!
Da hat Windows schon so eine tolle Dateiinhaltssuche und durchsucht keine PHP-Dateien ;)


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: aHa am 05-01-2011 20:44:10
Jawoll, genau das war das Problem, und Danke!
Da hat Windows schon so eine tolle Dateiinhaltssuche und durchsucht keine PHP-Dateien ;)
Dafür ist Windows auch nicht erste Wahl, sondern ein Editor wie z.B. Notepad++.
An Deiner Lösung wären wir sehr interessiert. Möglicherweise eine neue Option.

Gruß
Andreas


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 09-01-2011 14:49:37
Hi,
mein 1. Lösungsansatz war, da der Hintergrund ja eine feste Farbe hatte (Transparenz ist ja bei JPEG nicht möglich afair), diese auch in die Funktion einzugeben. Also hatte ich die resize.php, die ja nun nicht genutzt wurde, folgendermaßen geändert:

Code:
 /* create thumbnail */
  $thumb = @imagecreatetruecolor($w, $h);
  @imagefill($thumb, 0, 0, '#171617');  
  @imagecopyresampled($thumb, $im, 0, 0, $x0, $y0, $w, $h, ($w * $s), ($h * $s));
  @imagejpeg($thumb,"",100);

Ich habe die "imagefill"-funktion einfach eingesetzt. Natürlich könnte man das jetzt in die richtige Funktion einbauen und auch den Hintergrund als Parameter im Backend eingeben lassen, wenn ich das richtig sehe. Ich habe mir jetzt geholfen, indem ich die Dynamische Änderung deaktiviert und mir ein eigenes div dafür gebaut habe.


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: aHa am 11-01-2011 20:02:13
Danke für die Idee mit dem imagefill. Meine Tests dahingehend waren immer unbefriedigend.
Manchmal z.B. wurde der Hintergrund nicht gleichmäßig aufgefüllt. Eine Erklärung habe ich
bisher nicht dafür gefunden.

Zitat
Transparenz ist ja bei JPEG nicht möglich afair
Sehe ich auch so


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: gordon am 12-01-2011 15:10:44
Imagefill stoppt laut SelfPHP an einem Punkt, an dem es auf irgendeine andere Farbe trifft ("Stößt
imagefill() auf einen Bildpunkt, der eine andere Farbe als der Startpunkt hat, füllt
die Funktion in dieser Richtung nicht weiter.")... Bei einem leeren Bild sollte es aber keine finden, ich könnte mir höchstens ausmalen, dass dort Artefakte der JPEG-Kompression zum Fehler führen könnten..


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: aHa am 13-01-2011 21:29:00
Imagefill stoppt laut SelfPHP an einem Punkt, an dem es auf irgendeine andere Farbe trifft ("Stößt
imagefill() auf einen Bildpunkt, der eine andere Farbe als der Startpunkt hat, füllt
die Funktion in dieser Richtung nicht weiter.")... Bei einem leeren Bild sollte es aber keine finden, ich könnte mir höchstens ausmalen, dass dort Artefakte der JPEG-Kompression zum Fehler führen könnten..

Danke für die Informationen. Wir setzen das mal auf unsere interne TODO-Liste.
Einen Ansatz für JPEG-Artefakte sehe ich eigentlich nicht. In Deiner Änderung wird ja kein bestehendes Bild gefüllt.
Schwierig...

Gruß
Andreas


Titel: Re: JoomImages Standardansicht: Dynamische Thumbnailgröße - Hintergrund
Beitrag von: RalphBecker am 01-09-2011 10:29:37
Hallo,
bei mir war es auch so, das bei dynamischer Bildgröße und Hochkantaufnahmen die Fläche rechts neben dem Bild immer schwarz war.
Dank Eurer Hinweise hab ich es jetzt für mich so gelöst:

$cropimg = imagecreatetruecolor($cropwidth, $cropheight);
imagecopy($cropimg, $src_img, 0, 1, $offsetx, $offsety, $cropwidth, $cropheight);

Viele Grüße
Ralph