C# Zeichen Box?

... komplette Frage anzeigen

2 Antworten

Nimm eine PictureBox. Dort brauchst du die Ereignisse "MouseDown", "MouseUp", "MouseMove" und "Paint".

Im "MouseDown" ermittelst du, wenn der Benutzer die Maustaste klickt (und gedrückt hält). Im "MouseMove" speicherst du die aktuellen Maus-Koordinaten in eine Liste. Im "MouseUp" beendest du den Vorgang, damit keine Punkte mehr in die Liste aufgenommen werden. Im Paint zeichnest du eine Linie (Bezierspline, Cardinal-Spline, Line, ...) entlang der Punkte aus der Liste.

Tipp: Speichere nur jeden Punkt, der einen gewissen Abstand zum vorherigen überschreitet oder zeichne nur jeden zweiten oder dritten Punkt, um flüssigere Linien zu erzeugen.

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von GustavAT
21.05.2016, 13:53

Jeden 2ten/3ten Punkt oder Punkte mit einem gewissen Abstand zum Vorgänger weglassen ist eher nicht sehr optimal. Verwende stattdessen zum Vereinfachen der Linie den Douglas-Peucker Algorithmus.

1

Ein wenig mehr Details wären nicht schlecht. Wie genau soll das "Unterschreiben" funktionieren? Soll das quasi eine Art Mini-Paint zum freien Zeichnen von Text oder was auch immer sein? Hast du so etwas schonmal woanders gesehen oder hast ein Beispiel davon aus einem anderen Programm?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Benni517
20.05.2016, 23:00

Ja es soll so eine art Mini-Paint sein zum freien zeichnen

0

Was möchtest Du wissen?