Bilder im Container

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

  • Bilder im Container

    Hallo.

    Ich bin gerade dabei eine etwas ausführlichere Bildergalerie zu programmieren, brauch aber einen kleinen "Auf die sprünge helfen" tipp.

    Ich denke das man dies mit thumbs ermöglichen kann.

    ich habe einen 700px container der 10 px padding vom rand hat.
    nun möchteich, dass ein bild sobald es diese maße überschreiten sollte, auf den maximalbreitewert geschnittten werden soll (700px - 20px (rand) also das die bildbreite auf 680 px verkleinert wird.
    da das bild nun nicht sehr propertional wirken sollte, wie mache ich, dass die selben maße die in der breite entfernt wurde, auch in der höhe entfernt werden?
    Webdesign und Webentwicklung - Plunix.de

  • #2
    Ja, genau. Die lösung findest du in jedem Thumbnail-Thread. daher brauchen wir das hier nicht noch mal zu bereden.

    Hint: es wird nichts abgeschnitten, sondern einfach die maße verkleinert. (Grundschul-Mathe)

    Kommentar


    • #3
      mhhh hab die grundschule wohl verschlafen. wusste doch das ich irgendwas vergessen habe. war wohl in der 4 klasse wo der teil mit "suchfunktion benutzen" drankam ...
      Webdesign und Webentwicklung - Plunix.de

      Kommentar


      • #4
        sob.

        ich prüfe jetzt ob das bild breite größer als 680 pixel ist,
        wenn nicht wird das bild gespeichert.
        wenn ja ein thumb des bildes generiert.

        die breite des thumbs ist 680 .
        die höhe des bildes ist der eigentliche wert der höhe minus der differenz der breite des eigentlichenem bildes und der neuen breite 680 px.

        das wären bei einen testbild

        1000px mal 1300px dann

        680 breite
        und 980 höhe!

        ich bin immerwieder erstaunt was php alles kann. respect an die entwickler bzw. den physiker der ursprünglich php erfunden hat
        Webdesign und Webentwicklung - Plunix.de

        Kommentar


        • #5
          Hmm, ein Bild was 1024 x 400 pixel groß ist, würde nach deiner Rechnung welche Thumbnail-Größe erhalten?



          Da willst du noch was drauf erkennen? Oder ist das absicht? Schau dir lieber noch mal die anderen Threads an.

          Kommentar


          • #6
            ne wenn ich mir das direkt überlege ist das nicht meine absicht.

            das wäre auch schön dumm. also ich schau mich noch einmal um. wär natürlich eine hilfe wenn du jetzt einen passenden thread wüsstest.
            Webdesign und Webentwicklung - Plunix.de

            Kommentar


            • #7
              ahhh.
              habe jetzt eine weitere möglichkeit im thumbsgesehen.


              die eine, vorgegebene maße zu einen thumb nehmen die anbdere möglichkeit nur einen amxiwert anzugeben, und das thumb die entsprechende höhe auswählen zu lassen. muss jetzt jedoch mir ein script dafür zu sammen basteln.
              Webdesign und Webentwicklung - Plunix.de

              Kommentar


              • #8
                OffTopic:
                da das bild nun nicht sehr propertional wirken sollte, wie mache ich, dass die selben maße die in der breite entfernt wurde, auch in der höhe entfernt werden?
                soso...


                also hast du ein bild mit den maßen x mal y (breite mal höhe).
                und nun:
                Code:
                wenn (x>680)
                {
                   differenz = x-680
                   verkleinerungsfaktor = 1 - (differenz/x)
                
                   neue_breite = 680
                   neue_hoehe = y * verkleinerungsfaktor
                }
                ist das soweit schlüssig?

                Kommentar


                • #9
                  ähhhm habe die neue methode damit es nicht kapuut geht noch nich.
                  bis jetzt sieht es so aus:

                  ich habe die rechnung mit dem verkleinerungsfaktor noch nicht ganz verstanden.

                  bis jetzt sieht das ganze noch so aus:


                  wenn (x>680)
                  {
                  differenz = x-680
                  neue_breite = 680
                  neue_hoehe = y - (differenz)
                  }
                  Webdesign und Webentwicklung - Plunix.de

                  Kommentar


                  • #10
                    du hast doch weiter oben festgestellt, dass diese methode keine proportionalität bietet.

                    meine dagegen schon.

                    Kommentar


                    • #11
                      kleine hilfestellung

                      PHP-Code:

                      function to_thumb($bild$thumb$size)
                      {    
                          
                      # Bilddaten feststellen 
                          
                      $file getimagesize($bild); 
                          
                      $breite $file[0]; 
                          
                      $hoehe $file[1]; 
                          
                      $neueBreite $size
                          
                      $neueHoehe intval($hoehe $neueBreite $breite); 
                          
                          if(
                      $file[2] == 1
                          { 
                              
                      # GIF 
                              
                      $altesBild ImageCreateFromGIF($bild); 
                              
                      $neuesBild imagecreatetruecolor($neueBreite$neueHoehe); 
                              
                      imagecopyresampled($neuesBild$altesBild0000$neueBreite$neueHoehe$breite$hoehe); 
                              
                      ImageGIF($neuesBild$thumb); 
                          } 
                          
                          if(
                      $file[2] == 2
                          { 
                              
                      # JPG 
                              
                      $altesBild ImageCreateFromJPEG($bild); 
                              
                      $neuesBild imagecreatetruecolor($neueBreite$neueHoehe); 
                              
                      imagecopyresampled($neuesBild$altesBild0000$neueBreite$neueHoehe$breite$hoehe); 
                              
                      ImageJPEG($neuesBild$thumb); 
                          } 
                          
                          if(
                      $file[2] == 3
                          { 
                              
                      # PNG 
                              
                      $altesBild ImageCreateFromPNG($bild); 
                              
                      $neuesBild imagecreatetruecolor($neueBreite$neueHoehe); 
                              
                      imagecopyresampled($neuesBild$altesBild0000$neueBreite$neueHoehe$breite$hoehe); 
                              
                      ImagePNG($neuesBild$thumb); 
                          } 
                      }

                      to_thumb('/gfx/b.jpg''/gfx/thumb_b.jpg'150); 

                      Kommentar


                      • #12
                        Original geschrieben von penizillin
                        du hast doch weiter oben festgestellt, dass diese methode keine proportionalität bietet.

                        meine dagegen schon.
                        habe ich da was gegen gesagt?
                        habe bis jetzt nur geschrieben, dass das mein voriger stand war.

                        naja danke für die "kleine" hilfestellung. hatte shcon was gefunden aber das lief noch nicht ganz so wies sollte. werde das ma testen.
                        Webdesign und Webentwicklung - Plunix.de

                        Kommentar


                        • #13
                          sorry doppeleintrag
                          Webdesign und Webentwicklung - Plunix.de

                          Kommentar


                          • #14
                            if($file[2] == 1)
                            {


                            wenn ich das jetzt rechtz verstehe, muss ich noch den teil ergänzen, der das bildformat aus der datei ausliest, und in der varaible $file[2] speichert.
                            und nun die endungen statt den zahlen 1, 2 und 3 die hinschreiben?


                            [COLOR=red]// EDIT[/COLOR] Sorry hat sich gelöst. diese endungen erstellt getimagesize. habe diese funktion mal im manuekl nachgeschlagen.

                            habs jetzt raus. also danke
                            Zuletzt geändert von Lennie; 25.09.2006, 14:28.
                            Webdesign und Webentwicklung - Plunix.de

                            Kommentar


                            • #15
                              hab jetzt mein galleriescript fertig, kann überprüfen, ob die eingegebene adresse
                              (die fürs foto eintragen) eine url ist. weis aber nicht wie ich es erreiche dass ein script testet ob die angegebene datei auch ein bild ist. ansonsten würde ja fehlemeldung ausgegeben. das nicht durch null geteilt werden kann.
                              Webdesign und Webentwicklung - Plunix.de

                              Kommentar

                              Lädt...
                              X