ilch Forum » Ilch Clan 1.1 » Fehlersuche und Probleme » thumb erstellung

Geschlossen
  1. #1
    User Pic
    ScopeX Mitglied
    Registriert seit
    04.10.2005
    Beiträge
    323
    Beitragswertungen
    0 Beitragspunkte
    Hallo liebes ilch.de team...

    ich versuche schon seit langer Zeit die thumb erstellung der Gallery zu ändern.. so, dass alle thumbnails die selbe höhe haben und nicht wie normal die selbe Breite... ich weiß, dass ich dafür die /include/includes/func/gallery.php ändern muss..

    Ich schaffe es zwar, dass das ganz kleine Bild (welches in der gesamtübersicht zu sehen ist) einheitlich hoch ist... doch dann behält das mittlere bild diese höhe und die breite wird wie normal angepasst... der quelltext sieht so aus:
    <?php
    #   Copyright by Manuel
    #   Support www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    function create_thumb ( $imgpath, $thumbpath, $neueBreite ) {
        $size=getimagesize($imgpath);
        $breite=$size[0];
      $hoehe=$size[1];
    
    
       $neueHoehe=$size[1];
      $neueBreite=intval($breite*$neueBreite/$hoehe);
        if (function_exists('gd_info')) {
        $tmp = gd_info();
        $imgsup = ($tmp['GIF Create Support'] ? 1 : 2);
      }    else $imgsup = 2;
        
      if ($size[2] < $imgsup OR $size[2] > 3) { return (FALSE); }
     
      if ($size[2] == 1) {
        $altesBild = imagecreatefromgif($imgpath);
      } elseif ($size[2] == 2) {
        $altesBild = imagecreatefromjpeg($imgpath);
      } elseif ( $size[2] == 3 ) {
        $altesBild = imagecreatefrompng($imgpath);
      }
    $neueHoehe=100;
    
      if ( function_exists ( 'imagecreatetruecolor' ) AND $size[2] != 1 ) {
        $neuesBild = imagecreatetruecolor($neueBreite,$neueHoehe);
        imagecopyresampled($neuesBild, $altesBild, 0, 0, 0, 0, $neueBreite,$neueHoehe, $breite, $hoehe);
      } else {
    
        $neuesBild=imageCreate($neueBreite,$neueHoehe);
        imageCopyResized($neuesBild,$altesBild,0,0,0,0,$neueBreite,$neueHoehe,$breite,$hoehe);
      }
    
      if ($size[2] == 1) {
        ImageGIF($neuesBild,$thumbpath);
      }    elseif ($size[2] == 2) {
        ImageJPEG($neuesBild,$thumbpath);
      } elseif ( $size[2] == 3 ) {
        ImagePNG($neuesBild,$thumbpath);
      }
      return (TRUE);
    }
    
    ?>


    bitte helft mir... das wäre meiner meinung nach ein großer schritt in die richtung, dass die gallery schöner wird ^^

    dankeschön!


    verwendete ilchClan Version: 1.1

    betroffene Homepage: fvsg2007.de
    0 Mitglieder finden den Beitrag gut.
  2. #2
    User Pic
    Mairu Coder
    Registriert seit
    16.06.2006
    Beiträge
    15.334
    Beitragswertungen
    386 Beitragspunkte
    $neueHoehe=$size[1];
    $neueBreite=intval($breite*$neueBreite/$hoehe);

    Diese beiden Zeilen ändern, das ist nur logik bzw. mathematik, das solltest du doch auch alleine schaffen können oder?
    Und auch immer mal ein Blick auf die FAQ werfen. | Mairus Ilchseite
    0 Mitglieder finden den Beitrag gut.
  3. #3
    User Pic
    cmdrsamu Mitglied
    Registriert seit
    30.03.2007
    Beiträge
    19
    Beitragswertungen
    0 Beitragspunkte
    Noch ne kleine Veränderung:
    Somit wird die Höhe des Bildes nie größer als die vordefinierte maximale Breite. Es kommt also nicht zu unerwünschten Bildausmaßen:
    <?php 
    #   Copyright by Manuel
    #   Support www.ilch.de
    
    
    defined ('main') or die ( 'no direct access' );
    
    function create_thumb ( $imgpath, $thumbpath, $neueBreite ) {
    	$size=getimagesize($imgpath);
    	$breite=$size[0];
      $hoehe=$size[1];
      if($breite>$hoehe)
      {$neueHoehe=intval($hoehe*$neueBreite/$breite);}
    	else{
      $neueHoehe=$neueBreite;
      $neueBreite=intval($breite*$neueBreite/$hoehe);}
    0 Mitglieder finden den Beitrag gut.
Geschlossen

Zurück zu Fehlersuche und Probleme

Optionen: Bei einer Antwort zu diesem Thema eine eMail erhalten