von gd-erstelltem bild bildgröße ermitteln

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

  • von gd-erstelltem bild bildgröße ermitteln

    hi,

    also ich erstelle mit der gd-library ein Bild und brauche danach die Bildgröße in Bytes des Bildes. Geht das auch ohne das Bild vorher abzuspeichern??

    Also im Prinzip so:

    PHP-Code:
    $srcimg=ImageCreateFromJPEG("$imagePath/$imageName") or die("Problem In opening Source Image"); 

        
    $src_width ImageSX($srcimg);
        
    $src_height ImageSY($srcimg);

        
    $relation $src_width $src_height;
        
        
        if (
    $src_height $imageHeight && $src_width $imageWidth) {
            
    ImageJPEG($srcimg);
            return;
        }
        
        
    $new_height $imageHeight;
        
    $new_width round($new_height $relation,0);
        
        if (
    $new_width $imageWidth) {
            
    $new_width $imageWidth;
            
    $new_height round($imageWidth $relation,0);
        }

        

        
        
        
        
        
        
    $destimg=ImageCreateTrueColor($new_width,$new_height) or die("Problem In Creating image"); 

        
    ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,$src_width,$src_height) or die("Problem In resizing"); 

    filesize($destimg); //funzt nicht, gibts da ne Möglichkeit oder ne Formel zur 
                              //Berechnung der Bildgröße eines komprimierten JPGs. 

  • #2
    Ja, mit strlen()
    ICH BIN ICH!!!

    Kommentar


    • #3
      strlen()

      Kommentar


      • #4
        da gibt er mir 14 aus?? Script funzt aber einwandfrei, warum 14??
        PHP-Code:
            $srcimg=ImageCreateFromJPEG("$imagePath/$imageName") or die("Problem In opening Source Image"); 

            
        $src_width ImageSX($srcimg);
            
        $src_height ImageSY($srcimg);

            
        $relation $src_width $src_height;
            
            
            if (
        $src_height $imageHeight && $src_width $imageWidth) {
                
        ImageJPEG($srcimg);
                return;
            }
            
            
        $new_height $imageHeight;
            
        $new_width round($new_height $relation,0);
            
            if (
        $new_width $imageWidth) {
                
        $new_width $imageWidth;
                
        $new_height round($imageWidth $relation,0);
            }

            

            
            
            
            
            
            
        $destimg=ImageCreateTrueColor($new_width,$new_height) or die("Problem In Creating image"); 

            
        ImageCopyResized($destimg,$srcimg,0,0,0,0,$new_width,$new_height,$src_width,$src_height) or die("Problem In resizing"); 

            
            echo 
        strlen($destimg); 

        Kommentar


        • #5
          haste mal $destimage ausgeben?

          Kommentar


          • #6
            $destimg ist bei mir ne Ressource, deswegen bekomme ich auch 14 als Stringlänge raus.

            Kommentar


            • #7
              keiner ne ahnung??

              Kommentar


              • #8
                Original geschrieben von TobiaZ
                haste mal $destimage ausgeben?
                ausgeben ... auf platte ... grösse ermitteln ... liegen lassen oder löschen...
                Kissolino.com

                Kommentar


                • #9
                  ja gut, auf platte zwischenspeichern ist auch ne möglichkeit.

                  Aber ist doch auch zeitintensiver.

                  Und wie gehts mit strlen() ???

                  Kommentar


                  • #10
                    $destimg ist bei mir ne Ressource, deswegen bekomme ich auch 14 als Stringlänge raus.
                    TATA!

                    Jetzt überleg dir mal, wie man ein Bild direkt an den Browser sendet. Und dann denkst du nochmal über strlen() nach.

                    Kommentar


                    • #11
                      ok ich gebe das Bild aus:

                      ImageJPEG($destimg);

                      das klatscht er mir als String ins Browserfenster, wie kann ich das den unterdrücken, bzw. wie komm ich jetzt an die länge des Strings.

                      Ich weiß ich bin doof, ich mache es jetzt mit zwischenspeichern auf der Festplatte.

                      Kommentar


                      • #12
                        Ich weiß ich bin doof, ich mache es jetzt mit zwischenspeichern auf der Festplatte.
                        und das so kurz vorm Ziel!

                        Kommentar


                        • #13
                          verarschen kannste andere

                          Kommentar


                          • #14
                            OffTopic:
                            OK, wenn du meinst!

                            Kommentar


                            • #15
                              Hauptsache du weißt wie es geht........

                              Kommentar

                              Lädt...
                              X