[GD] transparentes PNG?

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

  • [GD] transparentes PNG?

    ich hab ein PNG in dem eine farbe als transparent festgelegt wurde.... wird auch so richtig dargestellt .... nur wenn ich jetzt das bild nehme und mit diesem code verschoben aufeinander lege ist das fertige bild nichtmehr transparent... (und in ein ein paar beiträgen hab ich gelesen das transparenz nicht möglichsei mit GD & PNG)

    wenn ich "imagecolortransparent" benutze kommt nur noch zeichensalat raus


    achja dann noch ne frage.... wenn ich den code fürs bilderstellen in eine funktion packe und dann aufrufe wird mir nur das bild ausgegeben und kein quellcode mehr



    PHP-Code:
        $src ImageCreateFromPNG($_cd);
        
    $bild ImageCreate(24,16);
        
    ImageCopy($bild,$src,0,0,0,0,16,16);
        
    ImageCopy($bild,$src,(8),0,0,0,16,16);
        
    ImagePNG($bild); 
    the end comes faster than you think - you've already reached it!

  • #2
    ok das mit der transparnez hat sich geklärt.... ich setz einfach mauel die hintergrundfarbe....

    aber was noch nicht funktioniet .... das ich das bild in einer function erstelle.... denn wenn ich die function dann aufrufe dann wird nur das bild ausgegeben..... doctype is dann PNG was kann man da machen.... hab keine lust wegen dem bilder zeug ne extra seite zumachen
    the end comes faster than you think - you've already reached it!

    Kommentar


    • #3
      Mir schwirrt da sowas im Hinterkopf rum, dass man, wenn man transparenter Bilder übereinander kopieren will, bei dem Zielbild ImageAlphaBlending (oder so ähnlich) anwenden muss. Aber k.a. wo ich das gelesen hab.

      Zu dem anderen Problem:
      Du kannst entweder ein extra PHP-Script machen, dass nur das Bild ausgibt (ich glaube, das willst du nicht, oder?), oder du lässt dir das Bild in eine Datei schreiben (zweiter Parameter von ImagePNG).
      Alternativ kannst du dein Script auch mit einem GET-Parameter versehen, und wenn dieser gesetzt ist, gibst du nur das Bild aus.
      hopka.net!

      Kommentar


      • #4
        Original geschrieben von Hopka
        Mir schwirrt da sowas im Hinterkopf rum, dass man, wenn man transparenter Bilder übereinander kopieren will, bei dem Zielbild ImageAlphaBlending (oder so ähnlich) anwenden muss. Aber k.a. wo ich das gelesen hab.

        Zu dem anderen Problem:
        Du kannst entweder ein extra PHP-Script machen, dass nur das Bild ausgibt (ich glaube, das willst du nicht, oder?), oder du lässt dir das Bild in eine Datei schreiben (zweiter Parameter von ImagePNG).
        Alternativ kannst du dein Script auch mit einem GET-Parameter versehen, und wenn dieser gesetzt ist, gibst du nur das Bild aus.
        das mit ImageAlphaBlending hat funktioniert danke

        beim bild in eine dateischreiben hab ich angst das das den server zusehr belastet wenn er bei 1000 datensätzen für jeden ein bild abspeichern muss. das mitm GET wird ja nich funktionieren wenn ich das in einer funktion habe, oder?
        the end comes faster than you think - you've already reached it!

        Kommentar


        • #5
          Wenn bildAnzeigen die Funktion ist, die das Bild anzeigt, kannst du das ganze doch so machen:
          PHP-Code:
          if (isset($_GET['displayimage'])) {
              
          bildAnzeigen();
              exit;

          hopka.net!

          Kommentar


          • #6
            Original geschrieben von Hopka
            Wenn bildAnzeigen die Funktion ist, die das Bild anzeigt, kannst du das ganze doch so machen:
            PHP-Code:
            if (isset($_GET['displayimage'])) {
                
            bildAnzeigen();
                exit;

            wenn ich das nu so in einer seite aufrufe dann bekomm ich aber wieder nur zeichensalat
            the end comes faster than you think - you've already reached it!

            Kommentar


            • #7
              Naja, die Funktion bildAnzeigen musst du schon selber machen... und natürlich auch die korrekten Header senden, dann sollte es eigentlich so gehen (du darfst natürlich dann vorher keine Ausgaben machen).
              hopka.net!

              Kommentar


              • #8
                ich muss aber vorher was ausgeben

                dann komm ich wohl nicht drum rum das in ne extra seite zu packen
                the end comes faster than you think - you've already reached it!

                Kommentar


                • #9
                  du kannst einen bildstream NICHT in einer laufenden seite DIREKT ausgeben (wurde hier schon zig mal erwähnt) ... entweder in eine datei schreiben und vorher prüfen ob sie existiert oder im image-tag eine php-datei aufrufen, die das bild generiert.
                  Kissolino.com

                  Kommentar

                  Lädt...
                  X