Seite 1 von 1
Grafik bearbeiten, abspeichern + anzeigen lassen
Verfasst: 28.03.2006 17:39
von funk.munich
Hi zusammen,
ich würde gerne eine existierende Datei bearbeiten, z.B. einen Kreis
in der Datei per Maus erstellen, danach die Änderungen abspeichern
und anzeigen lassen.
Eine Datei anzeigen zu lassen das habe ich noch hinbekommen:
LoadImage(#IMG_ID_0, "test.bmp")
ImageGadget(#GADGET_IMG_0, 3, 50, (width.l - 260), (height.l - 95), UseImage(#IMG_ID_0))
jedoch nun die Datei zu bearbeiten ... funxt einfach nicht.
Ich habe es mit StartDrawing, DrawImage ausprobiert, aber leider
ohne irgend einen Erfolg
Es wäre super, wenn mir jemand hierzu einen Tipp geben könnte.
Danke + Gruß,
Daniel
Verfasst: 28.03.2006 17:50
von Kaeru Gaman
probiers mal mit
Startdrawing(ImageOutput(...
Verfasst: 28.03.2006 21:09
von funk.munich
Hi,
ich habe es mal mit StartDrawing ausprobiert:
Code: Alles auswählen
Enumeration
#IMG
EndEnumeration
WWidth = GetSystemMetrics_(#SM_CXFULLSCREEN)
WHeight = GetSystemMetrics_(#SM_CYFULLSCREEN)
#WINDOW_FLAGS_0 = #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget
If OpenWindow(0, 0, 0, WWidth, WHeight, #WINDOW_FLAGS_0, "")
CreateGadgetList(WindowID())
Panel = PanelGadget(1, 3, 10, (WWidth - 50), (WHeight - 50))
AddGadgetItem(1, 0, "Images")
LoadImage(#IMG, "test.bmp")
ImageGadget(3, 5, 10, (WWidth - 100), (WHeight - 100), UseImage(#IMG))
StartDrawing(ImageOutput())
Box(0, 0, 20, 20 ,RGB(Random(255),Random(255),Random(255)))
StopDrawing()
EndIf
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = 1
EndSelect
Until Quit = 1
End
Das hat auch funktioniert. Aber ...
wie kann ich das nun dynamisch mit der Maus machen und dies dann
danach neu speichern?
Da stehe ich voll auf dem Schlauch.
Ich werde es einfach mal weiter ausprobieren.
Danke + Gruß,
Daniel
Verfasst: 29.03.2006 00:09
von Kaeru Gaman
nuja..
du musst dir praktisch ein PAINT selbercoden...
maus abfragen zeichenfunktionen wie circle, box, etc...
auf das image anwenden...
und speichern geht dann mit SaveImage oder so...
also, wenns nich zu wichtig für dich is, nimm lieber glei ein fertiges bildbearbeitungsprog...
ein Grafikprogramm selbst zu schreiben ist nicht grad eines der kleinsten Projekte...
Verfasst: 30.03.2006 09:45
von Franky
Grafikprogramm selbst zu schreiben ist nicht grad eines der kleinsten Projekte
Jup, siehe Signatur
Also, folgendermaßen mach ich das:
Hab ein Hauptbild und ein Zeichenbild.
Wenn die nachricht kommt "Huhu, mauss wurde gedrückt", setz ich den Zeichenmodus auf 1 (oder 2, halt so verändern, dasss du weißt, dass die Maus unten ist.) Dann merkste dir den Punkt, an dem die Maus grad is.
Wird die Maus bewegt, machste folgendes: Frag, wo die Maus grad ist, berechne über Pythagoras die Breite des Kreises, kopier das hauptbild aufs zeichenbild, mal den Kreis druf und zeigs auf dem Gadget an.
Wird die Maus dann losgelassen, machste einfach dat ganze auf dem Hauptbild, feddich.
Aber mehr Tips gibt´s net, ich will die Konkurrenz klein halten

*Scherz*