Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.38 veröffentlicht (30.04.24)


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste
Avatar zuschneiden (festes Format & Größe)
#1
Hi,

ich würde gerne alle Avatarbilder der selben Größe und Format haben. D.h. der User muss ein Bild mit einer Mindestgröße hochladen und das wird dann auf ein Format von 250x400 Pixel zugeschnitten. Hab gehört das ist mit PHP mögich? Könnt ihr mir sagen ob das stimmt und wie das geht, insbesondere welches Dokument ich bearbeiten muss? Google hat mir leider nicht geholfen.


lg
#2
Hilft Dir evtl. das hier?
viele Grüße
Jockl
übersetzte und eigene Plugins
#3
nicht wirklich, das streckt und staucht ja nur.

ich hab folgendes gefunden, aber muss zugeben, dass das für mich fast schon hieroglyphen sind, da ich mit php kaum erfahrung habe. und insbesondere nicht ganz weiß, wie und wo ich das bei mybb einarbeite:

<?php
$org_img = 'quelle.jpg';
$dst_img = 'ziel.jpg';
$crop = 20;

$xy_org = getimagesize($org_img);
$x_new = $xy_org[0] - (2 * $crop);
$y_new = $xy_org[1] - (2 * $crop);
$tmp_img = imagecreatetruecolor($x_new, $y_new);
$src_img = imagecreatefromjpeg($org_img);
imagecopy($tmp_img, $src_img, 0, 0, $crop, $crop, $x_new, $y_new);
imagejpeg($tmp_img, $dst_img, 80);
imagedestroy($tmp_img);
?>
#4
Hilft dir das eventl. ?
https://www.mybb.de/erweiterungen/16x/pl...-anpassen/
Mit freundlichen Grüßen

MrBrechreiz
#5
auch nicht so recht so wie es aussieht. aber so langsam fummel ich mich in php rein. hat mich zwar wieder viel mehr zeit (und schlaf) gekostet als ich eigtl habe, aber ich hab den obigen code für meine Bedürfnisse umgeschrieben. Das Bild wird erst auf eine höhe von 450 pixel verkleinert, dann auf eine Breite von 250 pixel zentriert zugeschnitten. Anschließend werden ein neuer pfad und die neuen maße in der datenbank gespeichert. wahrscheinlich gehts schöner, aber es tut was es soll. alte bilder werden beim upload neuer gelöscht.
übrigens musste ich die functions_upload.php bearbeiten, als Antwort zu meiner gestellten Frage.

hier noch der code:

Code:
    // Avatarformat anpassen
    
$org_img = $avatarpath."/".$filename;
$dst_img = $avatarpath."/cut/".$filename;

$size = @getimagesize($avatarpath."/".$filename);
$src_img = imagecreatefromjpeg($org_img);
$v=$size[0]/$size[1];
$b_n=$v*450;
$tmp1_img = imagecreatetruecolor($b_n,450);
imagecopyresampled($tmp1_img, $src_img, 0, 0, 0, 0, $b_n, 450, $size[0], $size[1]);
imagejpeg($tmp1_img, $avatarpath."/small/".$filename);
imagedestroy($src_img);




$x_new = 250;
$y_new = 450;

$u=($b_n - 250)/2;

$tmp2_img = imagecreatetruecolor($x_new, $y_new);
$src2_img = imagecreatefromjpeg($avatarpath."/small/".$filename);
imagecopy($tmp2_img, $src2_img, 0, 0, $u, 0, $x_new, $y_new);
imagejpeg($tmp2_img, $dst_img, 80);
imagedestroy($tmp2_img);
    
    
    
    // Everything is okay so lets delete old avatars for this user
    remove_avatars($uid, $filename);
    remove_avatars($uid, "/small/".$filename);
    remove_avatars($uid, "/cut/".$filename);

    $ret = array(
        "avatar" => "./uploads/avatars/cut/".$filename,
        "width" => intval(250),
        "height" => intval(450)
    );


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Avatar-Größe in BEITRÄGEN darki 7 3.007 26.09.2011, 18:30
Letzter Beitrag: SyntaX