PHP-Entwicklung

PHP-Entwicklung

Posts 1-8 of 8
  • User photo
    Joscha Prasse
    (not a XING member)
    Image Klasse (Thumbnail)
    Guten Tag,
    ich habe ein Problem und komm einfach nicht auf die Lösung.

    Ich möchte bei der Thumbnailerstellung die Thumbs so erstellen, dass alle gleich hoch und gleich breit, jedoch nicht verzogen sind.

    Ich arbeite mit der GDlib.

    Ich würde mich freuen, wenn mir jemand helfen könnte.

    Mit freundlichen Grüßen
    Joscha Prasse
    This post was modified on 22 Oct 2007 at 10:05 pm.
  • Post visible to registered members
  • Frank Pöhler
    Frank Pöhler    Premium Member
    The company name is only visible to registered members.
    Re^2: Image Klasse (Thumbnail)
    Hallo,

    das funktioniert nur wenn du gleichgrosse Ausgangsbilder hast und das Groessenverhaeltnis beibehalten kannst.

    Wenn die Ausgangsbilder unterschiedliche Groessenverhaeltnisse haben, bleibt dir, wenn du gleichgrosse Thumbnails haben willst (und keine schwarzen Raender), nur die Moeglichkeit aus allen Ausgangsbildern einen gleichgrossen Bildausschnitt zu waehlen und aus diesem die Thumbnails zu generieren.

    Gruss,
    Frank
    This post was modified on 22 Oct 2007 at 10:39 pm.
  • Oliver Heeger
    Oliver Heeger    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^3: Image Klasse (Thumbnail)
    Sie können für solche Operationen gut phpThumb *1 verwenden.
    Wir nutzen das für alle Bildoperationen in unserem cms und es läuft sicher und performant.

    Außerdem hat es ein eigenen Cache und reichlich Fallback-möglichkeiten für verwurstete Server.

    LG, Oliver Heeger

    [1] http://phpthumb.sourceforge.net/
  • User photo
    Joscha Prasse
    (not a XING member)
    Re^4: Image Klasse (Thumbnail)
    Moin,
    vielen Dank für den Tip mit phpThumb. Funzt super!

    Ich hab noch bissl was gebastelt damit keiner sehen kann wie das passiert. Falls es wen interessiert:

    .htaccess:
    RewriteRule thumb/(.*)/tn_(.*)_(.*)\.jpg$ /phpThumb/thumb.php?src=/images/$1/tn_230_$3.jpg&zc=1&h=$2&w=$2

    Dadruch kann man das bild so ansprechen:
    domain.de/thumb/1193090400/tn_150_9d375ad35c2734802afccb6d6328db11.jpg

    Die Zahl 150 kann individuell angepasst werden, man erhält immer ein Bild, dass in diesem Beispiel, 150x150 pixel hoch und breit ist. Natürlich ist es nicht verzogen (cropped -> ausgeschnitten).

    Verzeichnis, Filename usw muss natürlich angepasst werden, is ja klar ;)


    Viel dank noch einmal
    This post was modified on 31 Oct 2007 at 06:47 am.
  • Oliver Heeger
    Oliver Heeger    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^5: Image Klasse (Thumbnail)
    Ok, so gehts natürlich auch.

    Wenn es möglich ist, sollten Sie die Thumbnails über das OOP Interface erstellen lassen. Ist ein bisschen schneller und erspart den Umweg über die .htaccess.

    Bsp:
    require_once('../backend/includes/phpthumb.class.php');
    $phpThumb = new phpThumb();
    $phpThumb->w = 150;
    $phpThumb->setSourceFilename($org_src);
    $phpThumb->GenerateThumbnail();
    $phpThumb->RenderToFile($output_name);

    LG; Oliver Heeger
  • User photo
    Joscha Prasse
    (not a XING member)
    Re^6: Image Klasse (Thumbnail)
    und die files dann direkt speichern?
    This post was modified on 31 Oct 2007 at 07:28 pm.
  • Oliver Heeger
    Oliver Heeger    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^7: Image Klasse (Thumbnail)
    Oder '<img src="'.$output_filename.'">' direkt an das Templatesystem weitergeben, da phpthumb die Datei schon gecached hat. (Wenn die Einstellungen stimmen).

    Ansonsten könnte die Datei auch direkt mit $phpThumb->OutputThumbnail(); ausgegeben werden, halte ich aber nicht für ratsam, es sei denn sie programmieren ganz ohne Templates.

    LG, Oliver Heeger