Hallo in die Runde.
Bevor ich jetz das Rad komplett neu erfinde, Frage ich mal nach geeignetem Beispielcode.
Ich benötige eine Funktion, der ich ein Bild übergebe. In einem passendem Dialog soll dieses Bild angezigt werden und der Anwender soll dort einen (rechteckigen) Bildausschnitt (mit der Maus) festlegen können. Dieser Ausschintt soll nachträglich in der Größe und Lage verändert werden können.
Eine Möglichkeit zum Zoomen des Bildes während der Bearbeitung wäre schön.
Hat jemand eine solche Funktion in seinem Programm und würde mir den Code zur Verfügung stellen? Oder gibt es das schon irgendwo als Beispiel?
Naja, copy an paste wird nicht funktionieren. Da muss man schon einiges anpassen.
Im Web ist das ein fileupload und anschliessend passiert vieles im Webcanvas. Wie gro der Aufwand ist, dass auf Desktop umzubauen kann ich nicht sagen, der Code ist auch schon ein paar Jahre alt, da stecke ich gedanklich nicht mehr drin.
Ich knnte Dir diesen Teilbereich aus dem Projekt herauskopieren, das wird dann allerdings so ersteinmal nicht einfach lauffhig sein. Als Grundlage fr eine eigene Entwicklung knnte es vermutlich dienen.
Ich habe mir Projekt jetzt nochmal angeschaut.
Jetzt ist mir wieder eingefallen, ich habe damals von dem XOJO-WebCanvas auf ein “natives” Browser-Canvas befeuert von JavaScript umgestellt und dies dann eigentlich nur das Ergebnis an Xojo übergeben. Die Kommunikation Client <-> Server <-> Client war unter Xojo einfach zu träge.
Leider habe ich diese erste Entwicklungsphase (reines Xojo-Canvas) auch nicht ins Git eingecheckt.
Mit dieser Javascript-Variante kannst Du natürlich rein gar nichts anfangen, da davon eigentlich nichts in Xojo passiert.
Sorry…
Der Algorithmus heit “Marching Ants”. Es wrde mich wundern, wenn es davon nicht eine Xojo-Version gbe. Der zweite Teil mit dem Verschieben sollte mit dem Beispiel “Objects in Canvas” machbar sein.
Marching Ants wre hbsch, mir reicht aber schon ein (z. B. rotes) Rechteck mit den entsprechenden Greifpunkten in den Ecken und an den Seiten.
Gundstzlich habe ich die Funktion schon. Allerdings funktioniert die Bedienung nicht immer korrekt. Seinerzeit habe ich das mal quick&dirty zusammengeklppelt und so gelassen. Jetzt kam (mal wieder) ein Hinweis auf die hakeliege Funktion und Einschrnkungen in Zusammenhang mit der Lupe.
Bevor ich mich jetzt in meinen alten, hsslichen Code reinfinde und die Fehler behebe, hatte ich auf eine bessere Basis gehofft.
Hier liegt ein Missverstndnis vor.
Ich bentige einen Dialog (ein Fenster) in dem ich ein Bild anzeigen lasse. In dem Dialog soll der Anwender einen Ausschnitt innerhalb des angezeigten Bildes festlegen knnen. Als Ergbnis bentige ich die Koordinaten des Ausschittes (top, left, high width).
Das klingt nun hingegen für mich interessant Dass man mit den Maus-Koordinaten bei den Latenzen im Web nichts anfangen kann, habe ich bei einer ähnlichen Aufgabenstellung ebenfalls festgestellt und bin erstmal bei einer recht unschönen UX ohne Drag-Selection gelandet. Welche JS-Library hast du dabei für das Auswählen des Ausschnitts hergenommen?
ich habe in meinem Programm ein Fenster, in dem ich Bilder auswhlen, zoomen und in einen Ausschnitt einpassen kann. Ich nutze das fr die bernahme und Zurechtschneiden von Fotos als “Passfoto”. Damit kannst Du sicher alles machen.