PHP / GD2 Bildupload schlechte Qualität...

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • PHP / GD2 Bildupload schlechte Qualität...

    Hi!
    Folgendes Problem.

    Ich nutze die GD2 zum Bilder Upload, allerdings ist die Qualität recht bescheiden. Hat jemand ne Idee? Bin ratlos....

    PHP-Code:
    copy("$bild0""../topdjs/$username-djpic.jpg");
          
    $altesBild=ImageCreateFromJPEG("../topdjs/$username-djpic.jpg");
         
    $size=getimagesize("../topdjs/$username-djpic.jpg");
         if (
    $size[0]>$size[1])
         {
            
    $newwidth=640;
            
    $newheigth=480;
         }
         else
         {
            
    $newwidth=480;
            
    $newheigth=640;
         }
         
    $neuesBild=imagecreatetruecolor($newwidth$newheigth);
         
    ImageCopyResampled($neuesBild,$altesBild,0,0,0,0$newwidth$newheigth$size[0], $size[1]);
         
    ImageJPEG($neuesBild"../topdjs/$username-djpic.jpg");
          
    $altesBild=ImageCreateFromJPEG("../topdjs/$username-djpic.jpg");
         
    $size=getimagesize("../topdjs/$username-djpic.jpg");
         if (
    $size[0]>$size[1])
         {
            
    $newwidth=250;
            
    $newheigth=188;
         }
         else
         {
            
    $newwidth=188;
            
    $newheigth=250;
         }
         
    $neuesBild=imagecreatetruecolor($newwidth$newheigth);
         
    ImageCopyResampled($neuesBild,$altesBild,0,0,0,0$newwidth$newheigth$size[0], $size[1]);
         
    ImageJPEG($neuesBild"../topdjs/$username-djpic-kl.jpg");

          
    $altesBild=ImageCreateFromJPEG("../topdjs/$username-djpic.jpg");
         
    $size=getimagesize("../topdjs/$username-djpic.jpg");
         if (
    $size[0]>$size[1])
         {
            
    $newwidth=80;
            
    $newheigth=60;
         }
         else
         {
            
    $newwidth=60;
            
    $newheigth=80;
         }
         
    $neuesBild=imagecreatetruecolor($newwidth$newheigth);
         
    ImageCopyResampled($neuesBild,$altesBild,0,0,0,0$newwidth$newheigth$size[0], $size[1]);
         
    ImageJPEG($neuesBild"../topdjs/$username-djpic-tn.jpg"); 
    EDIT:
    php - tags by schmalle

  • #2
    so bald man imagecopyresized oder was in der art benutzt kommt das dabei raus....

    ich kenn das Problem, aber ich hab auch noch keine Antwort drauf gefunden.

    Also mich würde die Lösung auch interessieren.
    tata
    moqui

    [COLOR=red]Ich will keine unaufgeforderten Mails über PHP Fragen. Es gibt ein Forum hier! Und ich bin nicht Scripter für jeden, der mir ne Mail schreibt![/COLOR]

    Kommentar


    • #3
      immer wieder das gleiche. definiere
      Qualität recht bescheiden
      mach mal n vorher nachher bild.

      Kommentar


      • #4
        Vorher und nachher....

        So, hier vorher und nachher....

        Vorher:



        und nachher:

        Kommentar


        • #5
          und wo sind da die qualitätsunterschiede?
          Anwälte in Vulkane werfen -
          Wer anderen eine Bratwurst brät, der besitzt ein Bratwurstbratgerät!

          Kommentar


          • #6
            ...resized() liefert kein besseres ergebnis?

            OffTopic:
            den typ kenn ich?


            @und wo sind da die qualitätsunterschiede?
            @flying: du hast was an den augen, oder? (bitte nicht drauf antworten!)

            Kommentar


            • #7
              Und wie sonst?

              Wie kann man das sonst lösen?

              Kommentar


              • #8
                das sind jetzt aber andere Qualitätsunterschiede, als es vorher waren. (du meinst, dass die ränder und so eckiger/pixeliger sind?)

                da kannst du nichts dran ändern.

                PHP != Photoshop

                Kommentar


                • #9
                  Da hab ich aber schon besseres gesehen...

                  Also ich hab echt schon Seiten gesehen wo der Image Resize bombastische Qualität hatte.

                  Jemand ne Idee?
                  Mit ImageMagic scheint es auch nicht besser zu gehen.

                  Kommentar


                  • #10
                    Also ich hab echt schon Seiten gesehen wo der Image Resize bombastische Qualität hatte.
                    das wage ich zu bezweifeln.

                    Kommentar


                    • #11
                      mir fällt noch was ein/auf:
                      1. stimmt deine höhen/breitenberechnung? ... das thumb sieht etwas gedrückt aus ... da muss es bescheiden aussehen
                      2. nutz bei imagejpeg("bild","name",100); mal die beste qualitätsstufe => 100
                      3. ab php4.3.2 gibts imageantialias ( int im, bool on) ist unkommentiert ... müsstest du mal mit spielen, vielleicht so:
                      PHP-Code:
                      ....
                      //----
                      imageantialias ($neuesBild,1);
                      //----
                      ImageCopyResampled($neuesBild,$altesBild,0,0,0,0$newwidth$newheigth$size[0], $size[1]);
                      ImageJPEG($neuesBild"../topdjs/$username-djpic-tn.jpg",100); 
                      Kissolino.com

                      Kommentar


                      • #12
                        Höhen, breiten Rechnung...

                        Ich weis nicht ob die stimmt.
                        Ich nehme es an.
                        Kann jemand bitte mal nachrechen :-)

                        Kommentar


                        • #13
                          Re: Höhen, breiten Rechnung...

                          Original geschrieben von Dino23
                          Kann jemand bitte mal nachrechen :-)
                          ist nicht dein ernst, oder ?
                          Kissolino.com

                          Kommentar


                          • #14
                            Re: Höhen, breiten Rechnung...

                            Original geschrieben von Dino23
                            Ich weis nicht ob die stimmt.
                            Ich nehme es an.
                            Kann jemand bitte mal nachrechen :-)
                            das ding da auf deinem hals, ist kein reiner regenschutz!!!
                            h.a.n.d.
                            Schmalle

                            http://impressed.by
                            http://blog.schmalenberger.it



                            Wichtige Anmerkung: Ich habe keine Probleme mit Alkohol ...
                            ... nur ohne :-)

                            Kommentar


                            • #15
                              Dann mach ichs halt selbst :-)

                              $size=getimagesize("../news/$ts.jpg");
                              $v=$size[1]/300;
                              $newwidth=$size[0]/$v;
                              $newheigth=300;
                              $neuesBild=imagecreatetruecolor($newwidth, $newheigth);
                              ImageCopyResampled($neuesBild,$altesBild,0,0,0,0, $newwidth, $newheigth, $size[0], $size[1]);
                              ImageJPEG($neuesBild, "../news/$ts.jpg",100);

                              Kommentar

                              Lädt...
                              X