Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Idee: Vektor-Screenshot-Tool (SVG) für Delphi/VCL - Interessenten? (https://www.delphipraxis.net/210633-idee-vektor-screenshot-tool-svg-fuer-delphi-vcl-interessenten.html)

Rollo62 22. Mai 2022 09:52

AW: Idee: Vektor-Screenshot-Tool (SVG) für Delphi/VCL - Interessenten?
 
Hört sich interesant an, aber ich bin jetzt nicht ganz sicher ob ich den eigentlichen Sinn richtig verstanden habe.

Aus meiner Sicht würde ich das so umsetzen, quasi in zwei Phasen:
1. Ein "Form-Baum" Ersteller, der die aktuelle Form, Komponenten, Zustände etc. in XML o.ä. speichert in eine Art Seitenbeschreibungssprache
2. Ein "Renderer", der dann diesen Baum entsprechend in SVG rendert

Der 2.) Schritt wäre dann nur einmal pro Komponente ( vielleicht mit etwas Handarbeit ) nötig, aber wie ein Button zu SVG gerendert wird
sollte ich in der Regel nur einmal zu implementieren sein, wenn ansonsten Größe, Positionen, Fonts, Wrap, etc. bekannt sind.
Gefühlt würde ich annehmen dass das nur bei den Standard-Controls relativ leicht machbar wäre.

Das hätte den Vorteil dass man den 2.) Rendererteil mal auswechseln oder leicht erweitern könnte ( z.B. WinXP-Style, Aero-Style, DevExpress, ... ).
Der Vorteil wäre auch dass im 1. Teil dann ein sehr optimiertes XML zur verfügung stände, was wie eine komprimierte "Seitenbeschreibungssprache" funktionieren würde.
Ich würde aber erstmal schauen ob es nicht vielleicht schon passende Seitenbeschreibungssprachen gibt, mit fällt auf Anhieb jetzt nichts dazu ein.

Das müsste meiner Meinung nach funktionieren weil man alles Visuelle am Ende in irgendwelche Primitive auflösen kann ( Polygon, Positionen, Linienstärke, Gradient, Font, Höhe, Breite, ... ).
Aber 1:1 pixelgenau wird das wohl nicht, würde ich aber auch nicht unbedingt benötigen.

Redeemer 22. Mai 2022 18:45

AW: Idee: Vektor-Screenshot-Tool (SVG) für Delphi/VCL - Interessenten?
 
Zitat:

Zitat von delphifan2004 (Beitrag 1506160)
Ich beleuchte das mal aus Anewendersicht.

Die Idee ist überhaupt nicht für Anwender gedacht.

Zitat:

Zitat von Uwe Raabe (Beitrag 1506178)
Wenn ich das richtig verstanden habe, geht es Janni gar nicht um die Anzeige am Bildschirm, sondern eher um sowas wie Druckerzeugnisse

Ich dachte vor allem an Videos, wo man vielleicht an einen Teil des Programms heranzoomen möchte, ohne dass es Pixelmatsch wird.

Zitat:

Zitat von Rollo62 (Beitrag 1506179)
Aus meiner Sicht würde ich das so umsetzen, quasi in zwei Phasen:
1. Ein "Form-Baum" Ersteller, der die aktuelle Form, Komponenten, Zustände etc. in XML o.ä. speichert in eine Art Seitenbeschreibungssprache
2. Ein "Renderer", der dann diesen Baum entsprechend in SVG rendert

Der 2.) Schritt wäre dann nur einmal pro Komponente ( vielleicht mit etwas Handarbeit ) nötig, aber wie ein Button zu SVG gerendert wird
sollte ich in der Regel nur einmal zu implementieren sein, wenn ansonsten Größe, Positionen, Fonts, Wrap, etc. bekannt sind.
Gefühlt würde ich annehmen dass das nur bei den Standard-Controls relativ leicht machbar wäre.

Das hätte den Vorteil dass man den 2.) Rendererteil mal auswechseln oder leicht erweitern könnte ( z.B. WinXP-Style, Aero-Style, DevExpress, ... ).
Der Vorteil wäre auch dass im 1. Teil dann ein sehr optimiertes XML zur verfügung stände, was wie eine komprimierte "Seitenbeschreibungssprache" funktionieren würde.
Ich würde aber erstmal schauen ob es nicht vielleicht schon passende Seitenbeschreibungssprachen gibt, mit fällt auf Anhieb jetzt nichts dazu ein.

Das müsste meiner Meinung nach funktionieren weil man alles Visuelle am Ende in irgendwelche Primitive auflösen kann ( Polygon, Positionen, Linienstärke, Gradient, Font, Höhe, Breite, ... ).
Aber 1:1 pixelgenau wird das wohl nicht, würde ich aber auch nicht unbedingt benötigen.

Interessanter Ansatz. Bin mir aber nicht sicher, ob das die Sache mit dem Ziel, das erstmal nur für Win10 zu machen, nicht unnötig kompliziert macht, denn mein ursprünglicher Ansatz war der hier:
Zitat:

Zitat von jziersch (Beitrag 1506122)
Es sollen lediglich die auf einem Form enthaltenen Komponenten rekursiv durchlaufen werden und dann von innen nach außen als Vektoren abgespeichert werden.



Alle Zeitangaben in WEZ +1. Es ist jetzt 14:34 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz