Bild je nach Proportion in der Größe anpassen

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

  • Bild je nach Proportion in der Größe anpassen

    Hallo,
    ich möchte mit folgendem Script die Höhe bzw. Breite anpassen, sodass die Bilder immer in einen Rahmen von 250 X 250 passen. Die Bildproportionen ermittle ich über PHP und lese die Werte in Javascript ein.

    Funktioniert auch fast. Nur ein Problem gibt es noch:
    wenn ich die Bilder switche werden sie alsbald zum Quadrat verzerrt.

    Kann mir jemand da einen Tipp geben?

    Hier der Code:

    PHP-Code:
    function ppc(){
            
    k--;
        if (
    0){
        
    2;}
            
    document.grossbild.src bilder[k];    
        if(
    formats[k] == 2
         {
            var 
    bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.width="250px";
        
    delete(bildgroesse);     } else {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.height="250px";
         }
    }

    function 
    npc(){
          
    k++;
          if (
    2) {
          
    0; }
            
    document.grossbild.src bilder[k];
        if(
    formats[k] == 2
         {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.width="250px";
         } else {
        
    delete(bildgroesse);        var bildgroesse document.getElementById("bildformat"); 
              
    bildgroesse.style.height="250px";
         }
    }

    function 
    change(tausch_bild_name,neues_bild_name)
                 {
                  
    window.document[tausch_bild_name].src "./upload/"+neues_bild_name+"";
                  
                 } </
    script>      <tr>
          <
    td width="250" height="250" align="center" style="border: solid 1px #D9974B;"><img src="./upload/2007121716270679.jpg"  id="bildformat" name="grossbild"></td
    Zuletzt geändert von sanktusm; 18.05.2009, 20:04.

  • #2
    bitte poste den javascript-code, so wie ausgegeben wird. ohne das ganze php-gekröse, dann kann man es auch lesen.

    danke
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      bitte schöne

      sorry

      Kommentar


      • #4
        Hi,

        kannst Du bitte mal den Code bzgl. Struktur vernünftig formatieren, das kann ja kein Mensch lesen...

        Wo wird überhaupt welche dieser Funktionen aufgerufen?

        LG

        Kommentar


        • #5
          Formatierter Code

          PHP-Code:
          function ppc(){ 
              
          k--; 
              if (
          0) { 
              
          2;
             } 
              
          document.grossbild.src bilder[k];     
              if(
          formats[k] == 2)  
               { 
                
          delete(bildgroesse); 
                var 
          bildgroesse document.getElementById("bildformat");  
                
          bildgroesse.style.width="250px"
                  } else { 
                
          delete(bildgroesse);        
                var 
          bildgroesse document.getElementById("bildformat");  
                
          bildgroesse.style.height="250px"
               } 

          Kommentar


          • #6
            Wenn Du Hilfe willst, solltest Du Dir mal ein bischen mehr Mühe geben. Niemand hat Lust, Dir alles aus der Nase zu ziehen und Du bist schliesslich nicht erst seit gestern hier. Also:

            Zitat von kuddeldaddeldu Beitrag anzeigen
            Wo wird überhaupt welche dieser Funktionen aufgerufen?
            Und was steht in diesen Arrays "bilder" und "formats", wie sieht die Funktion delete aus und warum wird die mit einer lokalen Variablen aufgerufen, bevor selbige überhaupt definiert ist?

            LG

            Kommentar


            • #7
              Zitat von sanktusm Beitrag anzeigen
              wenn ich die Bilder switche werden sie alsbald zum Quadrat verzerrt.
              Und was wundert dich daran ...?


              Im gezeigten Code setzt du entweder die Breite oder Höhe auf 250px - immer beim selben Bildobjekt.
              Nachdem sowohl der if- als auch der else-Zweig jeweils einmal durchlaufen wurden, kommt also was quadratisches dabei raus - hast du was anderes erwartet?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                wie kann ich das überschreiben? oder zurücksetzen?

                bin für jede Hilfe dankbar.

                Kommentar


                • #9
                  Das Image-Objekt von javascript gibt dir die Breite und Höhe eines Bildes
                  Code:
                  a = new Image();
                  a.src = "xxx";
                  if(a.height > 250 || a.width > 250){
                   if(a.width >= a.height){
                    imageobj.style.width = "250px";
                    imageobj.style.height = Math.round(a.height / a.width);
                   }else{
                    imageobj.style.height = "250px";
                    imageobj.style.width = Math.round(a.width / a.height);
                   }
                  }

                  Kommentar

                  Lädt...
                  X