Pinsel und Farbe - zwei Malprobleme

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

  • Pinsel und Farbe - zwei Malprobleme

    Hallo zusammen,

    zur Zeit muss ich mich gezwungenermassen recht stark mit den Bilderstellungs-Funktionen von PHP beschäftigen.
    Es geht darum, ein Bild zu erzeugen, für das aus einem anderen Bild für jede einzelne Koordinate der Farbwert ausgelesen, die Koordinate verändert und unter diesem neuen Ort die entsprechende Farbe gezeichnet wird.

    Das klappt auch alles wunderbar. Nur eines: Die Qualität lässt zu wünschen übrig. Wenn man die Transformation mehrere Male hintereinander ausführt, wird die Qualität immer schlechter - was ja auch nur verständlich ist.

    Meine Frage ist nun:
    Wie kann ich die Qualität verbessern?
    Kann ich durch das Benutzen von bestimmten Funktionen eine bessere Qualität erreichen?
    Wäre ein GIF-Bild schärfer als ein JPG? (wenn ja - woher kriege ich GD < 1.6 ?)
    Entsteht diese Unschärfe (sie besteht darin, dass gewisse Bildpunkte einfach schwarz werden) ausschliesslich durch das Abspeichern? (denn eigentlich werden ja für jede Koordinate explizit die Farbe gesetzt und diese ist nie schwarz!)

    Mittlerweile habe ich durch die Verwendung eines bestimmten Rechenvorgangs das eigentlich lösen können, da nun Transformationsschritte übergangen werden und nur einmal das Bild verändert wird. Die Qualität stimmt nun, aber ... die Zahlen während der Berechnung werden zu gross.
    Natürlich könnte ich jetzt die GMP-Erweiterung benutzen, aber ich benutze Windows und muss es später auch auf Windows betreiben können.
    Gibt es da keine weiteren Erweiterungen, die ähnliches leisten? (benötigte Operationen sind Modulo, Multiplikation und Addition)

    Eine zweite Frage:
    In einer anderen Aufgabe will ich in Echtzeit zeichnen. Bevor ich mit dem Ganzen beginnen will, will ich einfach schnell noch fragen, ob sowas überhaupt möglich ist (natürlich, ich könnte es einfach mit einem einfachen Beispiel schnell ausprobieren - aber ich bin wohl zu bequem...).
    Ist es überhaupt möglich, dass immer nach einer abgeschlossenen Berechnung ein Bild an den Browser ausgegeben wird (bzw. das alte erneuert wird), ohne dass der User dazu auf "weiter" zu drücken hätte? Also eigentlich ein "Kino mit PHP"?
    Ich habe mir es so vorgestellt, dass durch die Versendung des Header-Befehls der Output des Bildes an sich ja kein Problem ist, aber ich bin mir nicht sicher, ob es möglich ist, mehrmals hintereinander ein Bild auszugeben...

    Freue mich über jede Antwort. Vielen Dank im Voraus...

    MfG, rob
    Zuletzt geändert von roobin; 13.03.2004, 18:28.

  • #2
    1. Nimm doch png statt gif. ist auch verlustfrei.

    2. Spiel mal ein wenig mit den Event-Handlern onMouseDown und onMouseUp herum; vielleicht lässt sich damit was arrangieren.
    mein Sport: mein Frühstück: meine Arbeit:

    Sämtliche Code-Schnipsel sind im Allgemeinen nicht getestet und werden ohne Gewähr auf Fehlerfreiheit und Korrektheit gepostet.

    Kommentar


    • #3
      1) Dann wird es wohl an meinem Code liegen ... denn eigentlich sollte es keine schwarzen Flecke geben.

      Schau Dir bitte schnell diese Seite an:
      http://www.grandplayers.info/philipp...ormationsstart

      Führe da ein paar Transformationen aus (nicht rückwärts, das funktioniert noch nicht...). Da entwickelt sich das Ganze nach einer gewissen Zeit ziemlich zu 'ner schlechten Qualität, obwohl es keine schwarzen Bildpunkte gibt ... und es wird auch diese Farbe nicht neu eingeführt!

      2) Werd ich mir überlegen, danke für den Tipp!

      Kommentar

      Lädt...
      X