bild erstellt mit php schwarzer rand?

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

  • bild erstellt mit php schwarzer rand?

    Hi

    Ich erstelle ein Bild und habe diesen Code:

    PHP-Code:
    imagecopyresized($pic_thumbload,$quelle_thumb,0,0,0,0,$ziel_bild_thumb_breite,$ziel_bild_thumb_hoehe,$bild_hoehe_breite[0],$bild_hoehe_breite[1]); 
    imagejpeg($pic_thumbloadthumb_".$pic."_".$extension,100); 
    Funktioniert auch soweit sehr gut. Jedoch hat es bei fast allen Bilder unten und rechts einen minimen schwarzen rand. Wie kommt dies bez wie kann ich dies verhindern?

    Habe mal alle werte ausgeben lassen. Jedoch sehe ich nicht was falsch sein könnte:

    $pic_thumbload: Resource id #30
    $quelle_thumb: Resource id #29
    $ziel_bild_thumb_breite: 173
    $ziel_bild_thumb_hoehe: 200
    $bild_hoehe_breite: 237
    $bild_hoehe_breite: 274


    Gruss

    kari_w

  • #2
    könnte daran liegen, dass die berechnung nicht richtig läuft.

    hast das resized bild, welches in das neue bild eingefügt wird die gleiche größe, wie das neue?

    machmal für das neue bild ne rote farbe. verändert sich der rahmen?

    Kommentar


    • #3
      HI

      Danke für deine Antwort.
      Kannst mir bitte sagen wie ich da vorgehen muss?

      GRuss

      kari_w

      Kommentar


      • #4
        Sorry für den zweiten Post. Aber kann mir jemand noch weiterhelfen? Ich komme einfach nicht weiter. Habe noch paar dinge angeschaut. Jedoch fand ich nicht heraus wie ich den fehler korrigieren könnte bez das überprüfen könnte wo der fehler ist.

        Gruss

        kari_w

        Kommentar


        • #5
          Kannst mir bitte sagen wie ich da vorgehen muss?
          Du brauchst eigentlich nur die fragen beantworten!

          Kommentar


          • #6
            Sorry habs erst jetzt verstanden was gemeint hast Hier mal der code:

            PHP-Code:
            $max_thumb_breite=$options['max_thumb_breite'];
            $max_thumb_hoehe=$options['max_thumb_hoehe'];
            $bild_hoehe_breite=@getimagesize(".pic_".$extension); 
            if(
            $max_thumb_breite!=0$div1 $max_thumb_breite/$bild_hoehe_breite[0]; 
            else 
            $div1=1
            if(
            $max_thumb_hoehe!=0$div2 $max_thumb_hoehe/$bild_hoehe_breite[1]; 
            else 
            $div2=1
            if(
            $div1<$div2) { 
            $ziel_bild_thumb_breite=$max_thumb_breite
            $ziel_bild_thumb_hoehe=round($bild_hoehe_breite[1]*$div1); 

            else { 
            $ziel_bild_thumb_hoehe=$max_thumb_hoehe
            $ziel_bild_thumb_breite=round($bild_hoehe_breite[0]*$div2); 

            if(
            $extension=="jpg" || $extension=="jpeg"$quelle_thumb=imagecreatefromjpeg(".pic_".$extension); 
            elseif(
            $extension=="gif"$quelle_thumb=imagecreatefromgif(".pic_".$extension); 
            $pic_thumbload=ImageCreateTrueColor($ziel_bild_thumb_breite,$ziel_bild_thumb_hoehe); 
            imagecopyresized($pic_thumbload,$quelle_thumb,0,0,0,0,$ziel_bild_thumb_breite,$ziel_bild_thumb_hoehe,$bild_hoehe_breite[0],$bild_hoehe_breite[1]); 
            imagejpeg($pic_thumbload,".pic_".$extension,100); 
            Es scheint am round zu liegen. Habe mal 200 * 200 die maxwerte. mit floor macht er bei vielen bilder korrekt aber gibt auch genug wo es ein rand gibt. Z-.B: ein einem bild 237 * 274

            Gruss

            Kari_w

            Kommentar


            • #7
              wunderbar! Dann weißt du ja jetzt bescheid.

              Kommentar


              • #8
                Hi

                Ich weiss nur nicht wie weiter. Ich habe schon statt roudn intval, floor, ceil und nichts probiert. Kein ergebnis.

                Gruss

                kari_w

                Kommentar


                • #9
                  hast du denn das problem erkannt? wie lautet es? und wie müsste es behoben werde?

                  Kommentar


                  • #10
                    Hi

                    Ich weiss nur das es anscheinend etwas mit dem round zu tun hat. Habe alles obengenannte schon versucht.
                    Mit floor macht er nur noch unten der strich. Bei vielen bildern gehts aber wenn ich dann z.B. die Bildgrlsse nehme wie oben geschrieben, dann kommt unten wieder der rand.

                    Gruss

                    kari_w

                    Kommentar


                    • #11
                      Hi

                      Habe mir nun nohcmals alles angesehen. wenn ich floor nehme statt round, scheint es zu 50% zu gehen. Irgendwie scheint dies grössen Proportional zu sein wo Probleme auftauchen bei bestimmten Proportionen.
                      Ich weiss nicht genau ob euch dies etwas weiterhilft ich hoffe schon. Habe keine Ahnung mehr was ich dagegen machenkann das es funktioniert.

                      EDIT: sorry nicht an die edit funktion gedacht.
                      EDIT2 Problem gelöst (imagecopyresampled)
                      Gruss

                      kari_w

                      Kommentar

                      Lädt...
                      X