Ich suche z.B. ein Beispielprogramm für ein Grafik oder GUI Toolkit,
dass z.B. Pixel und Linien malen kann, die jedoch als Objekte noch
manipulierbar sind (Auswahl durch anklicken oder über eine Liste,
Manipulation: Löschen, Verschieben, Farbe).
Es soll kein Anti-Aliasing durchführen.
Es sollte möglich sein, das Bild in Objektform und als Rastergrafik zu
speichern.
Es wäre gut, wenn Linien beim Erstellen live gezeichnet werden. Also
"Klick" und dann als Gummiband das Linienobjekt bei jeder Mausbewegung
neuzeichnen.
Zoom ist eigentlich auch wichtig.
Vielleicht kennt ja jemand eine Programmierübung für so ein "einfaches"
Malprogramm.
Mit der Java2D API kann man so etwas recht simpel umsetzen, du hältst
dir in deiner Komponente einfach eine Liste von Shapes (
http://download.oracle.com/javase/1.4.2/docs/api/java/awt/Shape.html )
welche du manipulieren kannst, nach jeder Manipulation wird ein repaint
ausgeführt, Antialiasing gibt's gratis geschenkt dazu, Speichern in
gängige Grafikformate inclusive, Persistenz als Vektorgrafik entweder
über Objectstream, XStream oder gleich als SVG...
Die Frage ist also eher was du mit do einem "Malprogramm" anstellen
willst. Inkscape ist z.B. schon etwas "fertiges" welches all deine
Anforderungen erfüllen sollte.
Ich möchte Pixelgrafiken erstellen, aber nicht alles manuell mit einem
1-Pixel-Stift machen müssen.
Daher ist es wichtig, dass kein Anti-Aliasing durchgeführt wird.
Macromedia Fireworks (jetzt Adobe) ist eine Mischung aus Raster- und
Vektorgrafikprogramm und wäre ideal, ist aber eingestellt worden und
eine Heft-Version habe ich noch nicht gefunden. Die letzte Demo läuft
bei mir leider auch nicht.
http://mars.netanya.ac.il/~samy/tkpaint.html läuft mit
http://www.activestate.com/activetcl/downloads
Zeichnet leider die Linien neu anstatt stumpf zu zoomen.
http://download.oracle.com/javase/1.4.2/docs/api/java/awt/Graphics2D.html
Anti-Aliasing kann abgeschaltet werden.
Fehlt nur noch das Programm :-)
Habe mit Java noch nichts gemacht, aber ich suche in die Richtung mal
weiter.
Sonntagsbraten schrieb:> Ich möchte Pixelgrafiken erstellen, aber nicht alles manuell mit einem> 1-Pixel-Stift machen müssen.> Daher ist es wichtig, dass kein Anti-Aliasing durchgeführt wird.
Der Zusammenhang erschließt sich mir nicht.
Sonntagsbraten schrieb:> http://mars.netanya.ac.il/~samy/tkpaint.html läuft mit> http://www.activestate.com/activetcl/downloads>> Zeichnet leider die Linien neu anstatt stumpf zu zoomen.
Verstehe ich dich richtig: Du willst ein Programm, wo man zwar wie in
einem Vektorgrafikprogramm zeichnen kann, wo das Zoomen aber wie bei
einem Pixelgrafikprogramm aussieht? Oder was verstehst du unter "stumpf
zu zoomen"?
Und Antialiasing darf es auch nicht machen? Was ist Sinn dieser Übung?
Sonntagsbraten schrieb:> Habe mit Java noch nichts gemacht
Ist doch das Perfekte Objekt für einen einstieg, ich poste gleich
nochmal ein kleines Beispiel...
Rolf Magnus schrieb:> Was ist Sinn dieser Übung?
Ich mag es minimalistisch :-) Leider kann man bei Inkscape das
Antialiasing nicht abschalten.
Sowas hat aber auch als Kunst/Designform "Pixelart" Anhänger: z.B.
http://hello.eboy.com/eboy/ Es ist wohl auch als 'retro' anzusehen.
Uh, ich sehe gerade dass mspaint in Windows 7 fast genau das macht, was
ich möchte! Es ist aber nur immer das aktuelle Objekt veränderbar,
sobald man ein anderes Werkzeug benutzt, wird es ins Bitmap gespeichert.
Läubi .. schrieb:> Ist doch das Perfekte Objekt für einen einstieg, ich poste gleich> nochmal ein kleines Beispiel...
Das wär' zwar sehr nett, und ich werde es mir auf jeden Fall ansehen,
aber mach dir meinetwegen bitte keine Mühe (schönes Wetter!?).
Im Anhang mal das vollständige Beispiel, es wird nur Farbauswahl und
Linien zeichnen Unterstützt, eine Editierfunktion ist nicht enthalten
ebenso keine Verschieden Strichstärken und Arten, bitte nicht als
Beispiel für guten Stil nehmen, ist nur schnell zusammen getöpselt und
alles in einer Datei abgelegt aber das Prinzip sollte klar sein.
Als Bild kann man das ganze z.B. so ablegen:
>Der Zusammenhang erschließt sich mir nicht.
Mir auch nicht, ich habe diesen Beitrag auch nur versehentlich
angeklickt.
Pixelart: Kombination aus Inkscape und Gimp wäre möglich:
http://www.inkscapeforum.com/viewtopic.php?f=22&t=8530
Für Inkscape sollte man das Anti-Alias auch abschalten können, es wird
ja Cairo verwendet, und da kann man es abschalten. Eventuell müsste man
InkScape patchen (lassen).
Das alte XFIG könnte man auch nehmen...
Montagsbraten schrieb:> ich sehe keinen Unterschied mit/ohne AA
Es gibt noch sehr viel mehr "Hints" die man setzen kann, AA ist bei
einer Komponenten mein ich auch Standardmäßig aus:
http://download.oracle.com/javase/6/docs/api/java/awt/RenderingHints.html
Zudem kann es sein, da ich den Zoom direkt im Graphics Objekt setze, das
die Auswirkungen nicht direkt sichtbar sind, ggf. mal Grafikprogramm
bemühen.