My eGallery

Begonnen von DanielMathe, 08 Februar 2005, 17:39:40

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 2 Gäste betrachten dieses Thema.

DanielMathe

Die GD Bibliothek erzeugt zur Zeit sehr schlechte thumbs. Kann ich dass irgendwo im Adminbereich einstellen, oder muss ich da im Quelltext eines Scriptes? die Qualität manuell in der entsprechende Zeile ändern. Momentan sehen die Bilder so aus:

thumbs-> http://www.fsv-dippoldiswalde.de/modules.php?name=My_eGallery&file=index&do=showgall&gid=9

PHP-Info-> http://www.elbspace.de/module/phpinfo/body_phpinfo.php

Ist das so normal?
________________________________
Version vkpMX 2.1a
My_eGallery 2.0.0 VKP


jubilee

#1
Hallo !
Versuche einmal folgendes :
In der Datei /modules/My_eGallery/public/imageFunktions.php
diese Zeile:
$destImage = @imagecreate($destWidth, $destHeight);
bitte so abändern :
$destImage = @imagecreatetruecolor($destWidth, $destHeight);


MfG
jubilee

DanielMathe

Danke, Teste ich gleich mal. Da ich hier im Forum nichts gefunden habe, denke ich mal, dass die kaum einer verwendet. Welche der anderen Varianten sollte ich nehmen. Müsste ja theoretisch bei allen so schlecht erzeugt werden, die das Script nicht ändern - oder?

jubilee

Hallo !
ZitatMüsste ja theoretisch bei allen so schlecht erzeugt werden, die das Script nicht ändern - oder
Ja.
Die meisten bleiben aber bei der dynamischen Erstellung über den Browser.
Einige verwenden auch die netPBM (was m.M. nach die beste Wahl ist).

BTW: Die alten Thumbs löschen. Die werden NICHT überschrieben !
MfG
jubilee

DanielMathe

OK danke, werde ich aus probieren. Die Thumbs löschen ist klar. Frage zu netPBM - muss ich die für jeden User ins home-Verzeichnis installieren oder kann ich die auf dem Server zentral bereitstellen oder gibt es da ein Problem mit der Rechtevergabe?

jubilee

Hallo !
Zitatmuss ich die für jeden User ins home-Verzeichnis installieren oder kann ich die auf dem Server zentral bereitstellen oder gibt es da ein Problem mit der Rechtevergabe

Kannst Du auch zentra bereitstellen.
Verzeichnis muss dann innerhalb eines evt. eingetragegen open_basedirs sein und die
einzelnen Dateien müssen world-executable sein (also das x-bit muss für alle gesetzt sein).
Du brauchst aber eine bin-Destribution dafür, wenn Du netPBM nicht komplett installieren willst.
Die kann ich Dir zukommen lassen.
Schau aber doch mal auf den Server, oder frag den Provider ob es nicht schon installiert ist. In dem Fall kann er Dir auch den Pfad dazu geben.
MfG
jubilee

DanielMathe

#6
Habe die bin-distribution im ordner /home/htdocs/web0/html/netpbm zentral für alle User bereit gestellt. Die Rechte auf 101777 gesetzt. Es werden auch thumbs in einer ordentlichen Qualität erstellt, aber die vorgegebene Breite der Kategorie von 150 Px wird ignoriert. In manchen Kats. funktioniert es, aber in anderen werden die 150 Px deutlich überschritten (aber die Höhe ist plötzlich 150 Px?). Da werden thumbs wie hier generiert, obwohl 150 Px vorgegeben sind.

http://www.fsv-dippoldiswalde.de/modules.php?name=My_eGallery&file=index&do=showgall&gid=9

???

jubilee

Hallo !
Zitataber in anderen werden die 150 Px deutlich überschritten (aber die Höhe ist plötzlich 150 Px?). Da werden thumbs wie hier generiert, obwohl 150 Px vorgegeben sind.

Ich hatte es damals so gecodet, das immer die kürzeste Seite die einstellung übernimmt und die andere Seite entsprechend des Seiteverhältnisses angepasst wird. Das wäre aber leicht zu ändern, das hier die längste Seite auf die vorgegebene Größe reduziert wird (die andere wieder genau entsprecend des Seiteverhältnisses).
MfG
jubilee

DanielMathe

Ähm, ich bin wirklich ein Ordnungsfanatiker, was das Layout betrifft. Könntest Du mir sagen, in welcher Funktion das festgelegt wird, ich würde nämlich generell auf die Breite zugreifen wollen, da man so das Seitenlayout in der Breite nicht sprengt sondern eindeutig definiert, so kommen die blödesten Kombinationen zustande.

jubilee

#9
Hallo !
Es findest alles in der Datei modules/My_eGallery/public/imageFunvtions.php statt.
am ende der Datei findest du 3 Abschnitte :

case 1:
If ($imginfo[0]>$imginfo[1])
{
        $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -height $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}
else if ($imginfo[0]<=$imginfo[1])
{
            $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -width $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}



Diese unterscheiden sich nur in dem Dateiformat des Ausgabethumbs. Alle 3 Abschnitte müssen sinngemäss
gleich geändert werden.
Beispiel 1 Abschnitt
alt:

case 1:
If ($imginfo[0]>$imginfo[1])
{
        $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -height $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}
else if ($imginfo[0]<=$imginfo[1])
{
            $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -width $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}


neu :

case 1:
If ($imginfo[0]>$imginfo[1])
{
        $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -width $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}
else if ($imginfo[0]<=$imginfo[1])
{
            $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -height $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}

Die anderen beiden Abschnitte bitte dementsprechend abändern.
Bitte sonst NICHTS an den Abschnitten ändern (auch keine extra Leerzeichen etc.) sonst läuft es nachen evt. nicht mehr richtig.
Nach der Änderung wird immer die längste Seite auf den Vorgabewert korrigiert, die andere Seite wird entspr. des Seitenverhältnisses
angepasst.
MfG
jubilee

DanielMathe

#10
Habs jetzt so geändert, dass der Vorgabewert sich immer auf die Bildbreite bezieht.

case 1:
If ($imginfo[0]>$imginfo[1])
{
        $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -width $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}
else if ($imginfo[0]<=$imginfo[1])
{
            $cmd .= "".$cmd99."giftopnm $src_file | ".$cmd99."pnmscale -width $newWidth | ".$cmd99."ppmquant 256 | ".$cmd99."ppmtogif > $dest_file";
}



Jetzt muss ich noch was wissen, habe mir gerade ein frisches vkpmx2.1a für nen neuen Kunden aufgespielt. Dabei stellte ich fest, dass bei Euch auf dem Server von der Gallery die index.php V 20.4 integriert ist. In meiner aktuellen Version, welche vermutl. das Sicherheitspatch der Gallery hat, ist aber V 20.11 aktuell. Ist das korrekt, dass noch die unsichere Version im Pack ist, dass wäre nicht gut?

jubilee

Hallo !
Es scheinen noch die alten Versionen in dem Pack zu sein.
Deswegen sicherheitshalber den My_eGallery-Fix aufspielen.
Werde mal anstossen, das die Versionen aktualisiert werden.
MfG
jubilee