tutorials.de Buch-Aktion 05/2012
ERLEDIGT
JA
ANTWORTEN
4
ZUGRIFFE
635
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    nihilfire nihilfire ist offline Rookie
    Registriert seit
    Sep 2009
    Beiträge
    7
    Hallo!

    Ich habe ein merkwürdiges Problem, wenn ich ein Bild zuschneide:

    PHP-Code:
    $src_img imagecreatefromjpeg($src);
    $dst_img imagecreatetruecolor($dst_w$dst_h);
    $dst_y = ($src_h $dst_h) / 2;

    imagecopy($dst_img$src_img000$dst_y$src_w$src_h);

    imagejpeg($dst_img$path100); 
    Wenn das $src-Bild wenige KB groß ist wird das neue Bild nicht vollständig erzeugt:

    ImageJPEG() Quality Problem-blaue.jpg ImageJPEG() Quality Problem-blaue_crop.jpg

    Ist das Bild größer oder die Qualität kleiner als 90, gibt es keine Probleme.
    Weiß jemand woran das liegen könnte


    Danke und Gruß
    nihilfire
     

  2. #2
    Avatar von Danielku15
    Danielku15 Danielku15 ist offline Mitglied Platin
    Registriert seit
    Feb 2004
    Ort
    Österreich
    Beiträge
    731
    Blog-Einträge
    3
    Dein Aufruf von imagecopy ist in sofern falsch dass der $dst_y Parameter an der 5. Stelle ist. Laut PHP -Doc ist der Ziel-Y Parameter an der 5. Stelle:
    Zitat Zitat von http://php.net/manual/en/function.imagecopy.php
    bool imagecopy ( resource $dst_im , resource $src_im , int $dst_x , int $dst_y , int $src_x , int $src_y , int $src_w , int $src_h )
    Ich denke die Funktion imagecopyresampled dürfte das bewirken was du möchtest. (Aus einem Quellbild einen Ausschnitt in ein Zielbild kopieren. Zusätzlich bewirkt das Resampeln dass gerade beim Skalieren weniger "Artefakte" auftreten.)
    Zitat Zitat von http://www.php.net/manual/en/function.imagecopyresampled.php
    bool imagecopyresampled ( resource $dst_image , resource $src_image , int $dst_x , int $dst_y , int $src_x , int $src_y , int $dst_w , int $dst_h , int $src_w , int $src_h )
     

  3. #3
    nihilfire nihilfire ist offline Rookie
    Registriert seit
    Sep 2009
    Beiträge
    7
    Habe jetzt:

    PHP-Code:
    imagecopyresampled($dst_img$src_img000$src_y$dst_w$dst_h$dst_w$dst_h); 
    (bei den letzten beiden Parametern habe nicht src_w bzw. scr_h benutzt, weil das bild dann verzerrt wird), bekomme aber dasselbe Resultat:

    ImageJPEG() Quality Problem-wasserlilien.jpg ImageJPEG() Quality Problem-wasserlilien_cr.jpg

    , wenn ich bei Qualität 100 nehme.


    Gruß
    nihilfire
     

  4. #4
    Avatar von Yaslaw
    Yaslaw Yaslaw ist offline n/a
    tutorials.de Moderator
    Registriert seit
    Dec 2007
    Ort
    Winterthur(CH)
    Beiträge
    5.205
    sollten die letzten 2 Parameter nicht von der Source stammen?
     
    ---------------------------------------------------------------------------------------------------
    item: Ich habe es mir aus gesundheitlichen Gründen abgewöhnt unformatierten Code zu lesen (Auch SQL-Statements kann man formatieren!)
    item: Tutorial: [PHP][MySQL] Debug Queries
    item: Schreibt mir keine PN mit Fragen die im Forum beantwortet werden können - ich mache kein persönliches coaching
    item: Bitte zur besseren Lesbarkeit PHP-Code in [PHP]...[/PHP], SQL in [SQL]...[/SQL], Visual Basic in [VB]...[/VB] etc. schreiben

  5. #5
    nihilfire nihilfire ist offline Rookie
    Registriert seit
    Sep 2009
    Beiträge
    7
    Ich möchte ja einen Ausschnitt des Originals speichern und wenn ich da die Source-Größen angebe wird das Bild verzerrt.
     

Ähnliche Themen

  1. PDF High to low quality
    Von sight011 im Forum Desktop Publishing (DTP)
    Antworten: 2
    Letzter Beitrag: 06.05.10, 18:35
  2. imagejpeg - Problem nach php-update
    Von BoTheK im Forum PHP
    Antworten: 2
    Letzter Beitrag: 08.12.05, 16:05
  3. Antworten: 3
    Letzter Beitrag: 02.02.05, 17:35
  4. problem mir imagejpeg()
    Von robat_h im Forum PHP
    Antworten: 1
    Letzter Beitrag: 23.08.03, 01:09