AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Idee: Vektor-Screenshot-Tool (SVG) für Delphi/VCL - Interessenten?
Thema durchsuchen
Ansicht
Themen-Optionen

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

Ein Thema von Redeemer · begonnen am 19. Mai 2022 · letzter Beitrag vom 22. Mai 2022
Antwort Antwort
Seite 1 von 3  1 23      
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.051 Beiträge
 
Delphi 2009 Professional
 
#1

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

  Alt 19. Mai 2022, 20:48
Hallo zusammen!

Das ist jetzt eine seltsame Frage, die in kein Forum so richtig passt. Ich habe eine Projektidee und wollte mal fragen, ob Interesse an Nutzung und Erweiterung besteht.

Ich überlege, eine Unit zu stellen, mit der man von einem Delphi-VCL-Programm einen Vektor-Screenshot im SVG-Format erstellen kann, um qualitativ hochwertige und einfach lokalisierbare Dokumentation zu erstellen. In meiner Vorstellung würde die Unit bei Einbindung in ein Projekt eine zusätzliche Form erstellen, die einen Button hat, mit dem man einen Screenshot der zuletzt davor aktivierten anderen Form im aktuellen Zustand macht. Alternative Zustände (Hover, gedrückt, Checkboxen), Popup/DropdownMenus, Untermenüs, ComboBox-Listen etc. würden als unsichtbare Objekte gespeichert, die man im Vektoreditor seines Vertrauens einblenden könnte. Die Unit müsste jeden zu unterstützende TControl-Erben einzeln unterstützen. Ich benutze nur die Komponenten aus dem Standard- und Win32-Tab, weshalb ich auch nur diese selbst erstellen würde. Eine einfache Erweiterbarkeit um weitere TControl-Erben (die entsprechenden sie behandelnden Klassen könnten sich registrieren) und neuere Delphi-Versionen ist selbstverständlich, weshalb das Projekt Open Source auf Github wandern würde. Für die Standard- und Win32-Steuerelemente ergibt eine Vererbung meiner Meinung nach keinen Sinn, da sie alle komplett unterschiedlich aussehen. Bei anderen Steuerlementen ergibt es möglicherweise Sinn, ich weiß aber nicht, wie man das umsetzen könnte.
Man müsste sich zudem die Optik des Betriebssystems mehr oder weniger hardcoden (im Sinne von: nicht von irgendwelchen User-Skins übernehmen, da der Zugriff hierauf eher kompliziert ist). Da könnte man (außer für die Größe von Fensterrahmen) was mit CSS machen oder sich auf ein bestimmtes Betriebssystem festlegen (das wäre dann Win10, Win11 ist ja derzeit noch in der early pre-Alpha).

Ein vergleichbares Projekt gibt es (unabhängig von meiner Idee) für GTK. Die Sache scheint auch nach meiner Einschätzung eher Toolkit-gebunden zu sein und nicht generell z.B. für Win32 machbar.

Ich freue mich auf eure Meinungen.
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer (19. Mai 2022 um 21:06 Uhr)
  Mit Zitat antworten Zitat
Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#2

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

  Alt 19. Mai 2022, 21:00
Ich habe noch nie etwas gesehen was die klassische Win32-Optik mit ihren Common Controls (was die VCL ja ist) in eine Vektorgrafik rendert. Nicht einmal im Ansatz - Das ist immer Pixelgrafik. Vielleicht ist das ja schon einmal ein Anhaltspunkt, wie herausfordernd die Umsetzung wäre.

Natürlich wäre das ein tolles Projekt, dringende Notwendigkeit habe ich aber ehrlich gesagt noch nicht gesehen, das zwingend als Vektorgrafik zu machen: Grade wenn man seine VCL-Oberfläche schon High Dpi-fähig hat, ein "normaler" Screenshot hat eigentlich immer gereicht. Verpasst man dem Bild noch einen schönen Schatten-Effekt und niemand kann meckern.
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#3

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

  Alt 19. Mai 2022, 21:47
Zitat:
Man müsste sich zudem die Optik des Betriebssystems mehr oder weniger hardcoden
Denke ich nicht.
Die Daten Grafiken sind alle in der UxTheme enthalten. Wäre vielleicht ein Ansatz.

Siehe DrawThemeBackground.

Geändert von venice2 (19. Mai 2022 um 22:10 Uhr)
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.051 Beiträge
 
Delphi 2009 Professional
 
#4

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

  Alt 19. Mai 2022, 22:02
Das sind aber Rastergrafiken, oder?
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#5

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

  Alt 19. Mai 2022, 22:06
Das sind aber Rastergrafiken, oder?
Ja.

So wie ich verstanden habe möchtest du diese doch in Vektorgrafik konvertieren oder?
Oder ist das ein Problem Bitmap nach SVG umzulegen? Habe es selbst noch nicht versucht.
Samples
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.051 Beiträge
 
Delphi 2009 Professional
 
#6

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

  Alt 19. Mai 2022, 22:51
Man kann Rastergrafiken nicht in Vektorgrafiken konvertieren.
(Zumindest nicht, wenn das gut aussehen soll.)
Man kann Vektorgrafiken nur von Grund auf erstellen. Und das möchte ich. Das bietet sich auch erst seit Windows 8 an, weil davor der Detailreichtum zu groß war: Aero oder Luna? keine Chance! Bei Windows 10 malst du für einen Button ein einfarbiges Rechteck mit einfarbigem Rahmen und packst einen Text drauf. Fertig. Natürlich kannst du versuchen, einen Aero- oder Luna-Button annähernd mit Gradients und Effekten nachzubauen – aber im Vergleich zu Windows 10 ist das sehr aufwändig.

Angehängt mal ein Ausschnitt aus einem Beispiel, das ich aber manuell erstellt habe, in 6-facher Vergrößerung.
Miniaturansicht angehängter Grafiken
vektor-ui.png  
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat
venice2
(Gast)

n/a Beiträge
 
#7

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

  Alt 19. Mai 2022, 22:56
Zitat:
Man kann Rastergrafiken nicht in Vektorgrafiken konvertieren.
Ok.. War auch nur ein Hinweis um dir das Hardcoden zu ersparen da in der UxTheme halt System abhängig die Grafiken alle vorhanden sind.
Wenn es nicht geht hat sich das erledigt.. Sorry
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#8

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

  Alt 20. Mai 2022, 14:12
Technisch bestimmt interessant umzusetzen, aber ich persönlich habe dafür auch keinen Bedarf.
Und wenn - sagen wir mal - bei Windows 12 wieder Farbverläufe Einzug halten (alles in der Mode kommt wieder), dann wird es wieder haarig.

Könntest du denn ggf. die GDI Draw Commands eines Fensters (damit wird doch so das Ganze gezeichnet, oder?) ggf. einfach recorden und dann transformieren auf einen Vektorformat?
  Mit Zitat antworten Zitat
Rolf Frei

Registriert seit: 19. Jun 2006
647 Beiträge
 
Delphi 11 Alexandria
 
#9

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

  Alt 20. Mai 2022, 14:14
Das Projekt tönt sehr interessant, aber einen Bedarf sehe ich im Moment leider auch nicht. Wenn ich ein Screenshot einer Form brauche, reicht auch eine Rastergrafik vollkommen. Wenn diese Komponente wesentlich mehr bietet als nur einen einfachen Screenshot, z.B. selber malen, also eine Art SVG-Paintbox, sähe es deutlich sinnnvoller aus für mich.

@TiGü
Die ganzen Fenstersymbole, Rahmen, Hintergründe, etc. werde nicht durch Winbdows gezeichnet sondern sind alles Rastergrafiken, die in den Themes fetig hinterlegt sind.

Geändert von Rolf Frei (20. Mai 2022 um 14:17 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe
Online

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#10

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

  Alt 20. Mai 2022, 14:47
Und wenn - sagen wir mal - bei Windows 12 wieder Farbverläufe Einzug halten (alles in der Mode kommt wieder), dann wird es wieder haarig.
Theoretisch kann SVG auch Farbverläufe. Lediglich die Erzeugung - insbesondere eine automatische - wäre schon sehr anspruchsvoll.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.
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