Ankündigung

Einklappen
Keine Ankündigung bisher.

PHP - Grafik erstellen - Breite Fest und Flexibel

Einklappen

Neue Werbung 2019

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

  • PHP - Grafik erstellen - Breite Fest und Flexibel

    Hallo.

    Ich suche eine Möglichkeit folgendes zu realisieren.

    Mit einem kleinem Skript wird eine Grafik durch mehrere kleine Grafiken erstellt. Das Skript rechnet automatisch alle kleinen Grafiken zusammen um die genaue Maße der Grafik zu berechnen.

    Einfaches Beispiel:

    O = 5px
    X = 10px

    OXXXOXXXO (75px)

    Ich würde jetzt gerne eine Funktion einbauen um eine "Fixe Größe" einstellen zu können. Wenn die kleinen Grafiken zusammen z.B. 75px Breit sind, soll automatisch an zwei bestimmten stellen soviele "Reserve Grafiken" hinzugefügt werden bis die Fixe-Größe von 100px erreicht ist.

    Einfach Beispiel:

    O = 5px
    X = 10px
    | = 1px

    O||||||||||XXXO||||||||||XXX|||||O (100px)

    Das Problem ist: Mir ist keine Funktion bekannt die so etwas kann. Ich suche bereits seit über 2 Wochen danach aber ich kann nichts finden.

    Hier ein kleiner Ausschnitt aus dem Skript:
    PHP-Code:
       for($j=1$j 2; ++$j){ 
          if(
    file_exists($StandardGrafik)){
            
    $size getimagesize($StandardGrafik);
            
    $im[] = array('img'     => imagecreatefrompng($StandardGrafik), 
                          
    'sizex'   => $size[0],
            ); 
            
    $total_size_x +=$size[0]; 
          } 
       } 


       for(
    $j=0$x strlen($Input1); $j $x; ++$j){ 
          if(
    file_exists($Input1[$j].$PNG)){
            
    $size getimagesize($Input1[$j].$PNG);
            
    $im[] = array('img'     => imagecreatefrompng($Input1[$j].$PNG), 
                          
    'sizex'   => $size[0],
            ); 
            
    $total_size_x +=$size[0]; 
          } 
       } 


       for(
    $j=1$j 2; ++$j){ 
          if(
    file_exists($Input4.$PFGF)){
            
    $size getimagesize($Input4.$PFGF);
            
    $im[] = array('img'     => imagecreatefrompng($Input4.$PNG), 
                          
    'sizex'   => $size[0],
            ); 
            
    $total_size_x +=$size[0]; 
          } 
       } 

  • #2
    Zitat von Rubio Beitrag anzeigen
    Das Problem ist: Mir ist keine Funktion bekannt die so etwas kann. Ich suche bereits seit über 2 Wochen danach aber ich kann nichts finden.
    diese Funktion wirst du dir selber bauen müssen

    Kommentar


    • #3
      Hi, hättest du vielleicht einen Denkanstoss für mich?

      Kommentar


      • #4
        O||||||||||XXXO||||||||||XXX|||||O

        na, hier:

        Falls (breite < 100) {
        setze nach jedem O 10x |
        ist O allerdings ganz am Ende {
        setze 5x | vorher
        }
        }



        schätze mal, es gibt sicherlich noch Fälle, in denen das genau das nicht tut, was es soll... aber das ist doch deine Sache, das Problem erstmal so in Tüten zu verpacken

        Kommentar


        • #5
          Vielen Dank das hat mir schon einmal geholfen.

          Ich habe eben zum testen einen Vergleichsoperator eingebaut und es geht. Ist die Grafik kleiner als 100px wird eine Zusätzliche Grafik geladen aber nur am Ende der Grafik.

          Kommentar


          • #6
            komm doch weg von den Grafiken. Versuch doch, aus deiner Theorie heraus deine gewünschte Zeichenkette zu erzeugen,und dann ganz am Ende deine Grafik aus der Zeichenkette zu erzeugen.

            Ne fertige Lösung wirst du von mir auf keinen Fall bekommen...

            Kommentar


            • #7
              Ich suche keine fertige Lösung. Mittlerweile habe auch ich gecheckt wie dieses Forum funktioniert.

              Mir fällt nur nichts ein wie ich im Skript quasi zurück soll um die Reserve-Grafiken einzusetzen.

              Kommentar


              • #8
                Hm, du brauchst doch quasi nur in der Schleife, wo du die Bilder dann zusammenfuegst, vorher zu pruefen ob die Breite erreicht ist, wenn nicht schreibst du in dem Array, wo die Platzhalter rein sollen, ein weitenren key in deinem im-Array rein ($im[2]['platzhalter'] = $int_anzahl .. wenn dieser key dann existiert, werden soviele Platzhalter eingefuegt wie die Anzahl halt ist..
                Ich beziehe mich mal auf die aussage:
                soll automatisch an zwei bestimmten stellen soviele
                Ansonsten wuerde evtl. der Teil, wo du die Grafik erstellst weiterhelfen..

                Kommentar

                Lädt...
                X