keine automatische Reduzierung der Bildgröße
Verfasst: 14.03.2013 14:57
Hallo, eher zufällig bin ich heute in unserem Forum darüber gestolpert, daß Bilder nach dem upload nicht mehr auf die Größe reduziert werden, welche im Adminbereich vorgegeben sind. Für das Forum wäre dies 640x420px und für die Galerie (Mod von nickvergessen) wäre das 800x600px. Alles wurde einfach auf 400px runtergerechnet. Nach einer Weile fand ich den Fehler(?) in der function_upload.php. Im Gegensatz zur Originaldatei finden sich zwei Änderungen bei mir:
ab Zeile 271:
und Zeile 383:
Meiner Schußlichkeit ist es nun zu verdanken, daß ich nicht mehr weiß, aus welchem Mod oder Snippet die Zeilen stammen. Verwende ich die Orignaldatei, stimmt zwar wieder die Größe beim Upload in der Galerie, aber die Reduzierung im Forum findet auch nur wie in der Galerie statt, also max. 800px statt 640px. Vielleicht kann mir jemand uf die Sprünge helfen, wie die Einstellungen aus dem Adminbereich auch wieder fürs Forum Gültigkeit finden.
Gruß Steppe
ab Zeile 271:
Code: Alles auswählen
/**
* Resize images with the true diemensions (800*600)
*/
function resize_images()
{
if ( $this->is_image() ) {
$limite_largeur = "400px";
$limite_hauteur = "300px";
$size = getimagesize($this->destination_file);
$largeur = $size[0];
$hauteur = $size[1];
if($hauteur > $limite_hauteur OR $largeur > $limite_largeur)
{
if($largeur > $limite_largeur)
{
$hauteur = $hauteur / ($largeur / $limite_largeur);
$largeur = $limite_largeur;
}
if($hauteur > $limite_hauteur)
{
$largeur = $largeur / ($hauteur / $limite_hauteur);
$hauteur = $limite_hauteur;
}
$destination = imagecreatetruecolor($largeur, $hauteur);
if ( $this->extension == "jpg" || $this->extension == "jpeg" ) $source = imagecreatefromjpeg($this->destination_file);
elseif ( $this->extension == "png" ) $source = imagecreatefrompng($this->destination_file);
elseif ( $this->extension == "gif" ) $source = imagecreatefromgif($this->destination_file);
imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur, $hauteur, $size[0], $size[1]);
if ( $this->extension == "jpg" || $this->extension == "jpeg" ) imagejpeg($destination, $this->destination_file);
elseif ( $this->extension == "png" ) imagepng($destination, $this->destination_file);
elseif ( $this->extension == "gif" ) imagegif($destination, $this->destination_file);
}
}
}
Code: Alles auswählen
if ( $this->is_image() )
{
$this->resize_images();
}
Gruß Steppe