Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.081 Beiträge
Delphi 2009 Professional
|
AW: Idee: Vektor-Screenshot-Tool (SVG) für Delphi/VCL - Interessenten?
20. Mai 2022, 19:30
Hallo,
das ist eine coole idee. Mit ein paar Zeilen code kann man schon einiges erreichen:
Code:
procedure TForm6.Button3Click(Sender: TObject);
var meta : TMetafile;
can : TMetafileCanvas;
begin
meta := TMetafile.Create;
can := TMetafileCanvas.Create(meta, 0);
try
Self.PaintTo(can.Handle, 0,0);
finally
can.Free;
end;
meta.SaveToFile('s:\out.emf');
meta.Free;
end;
Alle Panels werden bei mir als bitmaps ausgegeben, nicht als gefüllte Rechtecke. Evtl kann man dies abfangen oder die gleichfarbigen Bilder später erkennen und in entsprechende FillRects wandeln.
EMF ist natürlich nicht so schön wie SVG, aber skaliert auch.
Hab das gerade mal ausprobiert. Die Unterstützung für die erstellte EMF in unterschiedlichen Vektoreditoren ist unterschiedlich, aber überall schlecht: - Affinity: Komplett unbrauchbar. Besonders auffällig: Fast alle Objekte (insbesondere alle Texte) werden in der oberen linken Ecke platziert, außer der Hintergrund von TButton, TRadioButton, TCheckBox, TListBox, TTreeView, TProgressBar und TTrackbar
- Inkscape: schlecht, kaum brauchbar. Besonders auffällig: Der Text von TMemo wird durch irgendwelchen Blödsinn ersetzt.
- Word (nach "Bild bearbeiten"): schlecht, marginal schlechter als Inkscape. Besonders auffällig: Word ist als einziges der drei Programme nicht Unicode-fähig.
Durch Vergleich untereinander und mit einer Ausgabe über den Microsoft PDF Printer via TPrinter komme ich zu folgender Vermutung:
TLabel | 100% Vektor | TEdit | Rahmen Vektor, Text Raster | TMemo | 100% Vektor | TButton | Rahmen Raster, Text Vektor | TGroupBox | Rahmen Raster, Text Vektor, Text Vektor | TRadioButton | Symbol Raster, Text Vektor | TCheckBox | Symbol Raster, Text Vektor | TStatusBar | Rahmen und Symbol Raster, Text Vektor | TListBox | 100% Vektor | TComboBox - ComboBox | Rahmen und Symbol Raster, Text fehlt | TComboBox - Simple | Rahmen des Eingabefelds im Fokus-Status und Raster, Text fehlt, Listbox fehlt komplett | TComboBox - ComboBoxList | Rahmen und Symbol Raster, Text Vektor | TTreeView | Rahmen und Symbole Raster, Text Vektor | TProgressBar | 100% Raster | TScrollBar | 100% Raster | TTrackBar | 100% Raster | TTabControl | Rahmen Raster, Text Vektor |
Ist nicht so toll.
Janni 2005 PE, 2009 PA, XE2 PA
Geändert von Redeemer (20. Mai 2022 um 20:16 Uhr)
|
|
Zitat
|