Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Screenshots erstellen (https://www.delphipraxis.net/214177-screenshots-erstellen.html)

Amateurprofi 29. Nov 2023 09:24

Screenshots erstellen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich mache Screenshots häufig um Abbildungen von Controls oder Fenstern in Help-Files einzubinden und ging dabei bisher so vor:
1) Taste "Drucken"
2) Paint öffnen
3) Mit Strg-V den Screenshot in Paint übertragen.
4) In Paint den benötigten Bereich freistellen.
5) Speichern.

Problem hierbei:
Wenn ich versuche, im pf4bit oder pf8bit Format zu speichern sind die Farben i.d.R. verfälscht, lasse ich das Format bei pf24bit, bläht das die Helpdateien auf.
Mit z.B. Photoshop das Pixelformat ändern, bringt die gewünschten Ergebnisse, ist aber auf Dauer zeitraubend.

Ich habe jetzt ein kleines Programm erstellt, das die Angelegenheit vereinfacht.
Von der Exe habe ich mehrere Verknüpfungen auf dem Desktop angelegt, die mit unterschiedlichen Shortcuts aufgerufen werden und die die Exe mit unterschiedlichen Parametern aufrufen.

Das Standardverhalten des Programms (ohne Parameter) ist, wie folgt:
1) Wenn beim Aufruf des Programms der Mauszeigen auf ein Control zeigt, wird dieses Control in eine Bitmap kopiert.
2) Andernfalls, wenn Mauszeiger auf ein Fenster zeigt, wird dieses Fenster kopiert.
3) Andernfalls wird der ganze Bildschirm kopiert.
Anschließend wird geprüft, ob die Bitmap ohne Farbverluste in eines der Pixelformate pf1bit, pf4bit oder pf8bit umgewandelt werden kann, und ggfs. die Bitmap in das "kleinstmögliche" dieser Formate umgewandelt.
Wenn eine Umwandlung ohne Farbverluste nicht möglich ist, wird die Bitmap in pf8bit umgewandelt, wobei Farbverluste auftreten, die i.d.R. visuell nicht wahrnehmbar sind, umgewandelt.
Die Bitmap wird in jedem Fall ins Clipboard kopiert, und als .bmp-Datei gespeichert.

Wenn dem Programm ein Parameterstring übergeben wird, hängt das Verhalten des Programms hiervon ab.
Eine Erklärung der unterstützten Parameter befindet sich oberhalb der Prozedur "CopyFromScreen" im Anhang.

Kas Ob. 29. Nov 2023 10:03

AW: Screenshots erstellen
 
Liste der Anhänge anzeigen (Anzahl: 3)
Have you considered using PNG ?

here an example the attachment is screen shot with 1793x879 pixel and sizes are :
PNG : 65.7 KB (67,300 bytes)
JPG : 239 KB (245,146 bytes)
BMP : 4.50 MB (4,729,074 bytes)


Anhang 56470Anhang 56471

I had to archive the PNG to prevent the resizing and keep the quality and pixels.
Anhang 56472

ps: for my screenshot daily usage i use GreenShot https://getgreenshot.org/

jziersch 29. Nov 2023 10:18

AW: Screenshots erstellen
 
Windows contains a standard program:

Ausschneiden und Skizzieren / Snipping Tool

It is pretty usable and offers saving to PNG.

Sherlock 29. Nov 2023 10:36

AW: Screenshots erstellen
 
Wie wird das Programm gestartet? Die Maus zeigt ja immer auf das Icon, wenn man die Maus nutzt. Wenn man per Tastatur startet, hat sich der Focus geändert. Besser wäre es, das Programm würde ständig laufen oder meinetwegen die "Drucken" Taste Hooken, dann aber machen die zahlreichen Parameter wenig Sinn.

himitsu 29. Nov 2023 10:38

AW: Screenshots erstellen
 
Ja, in aktuelleren Windowsen (10/11) liegt auf der Print-Taste ein neues Standardtool von Microsoft. (früher mußte man es noch manuell starten, bzw. aus dem Appstore installieren)
* das kann den ganzen Bildschirm in die Zwischenablage kopieren, oder ein Fenster, bzw. einen freien Bereich
* sowie das Ganze als Bild oder Video

* Achtung, nach dem Stop werden Videos nicht automatisch gespeichert
* Fotos kommen standardmäßig in die Zwischenablage, sowie ist seit Windows 11 auch das Automatisch Speichern standardmäßig aktiv
* * C:\Users\%username%\Pictures\Screenshots
* manuell speichern oder noch beaarbeiten -> Klick auf Popup oder in den Benachrichtigungen (falls man das nicht deaktiviert hat)

*
Delphi-Quellcode:
Snipping Tool
, bzw.
Delphi-Quellcode:
Ausschneiden und skizzieren
(lässt sich auch im Startmenü finden)
* * reagiert es nicht direkt auf [Drucken], oder geht irgendwas automatisch oder nicht ... siehe im Programm, oben Rechts, in den 3 Punkten -> Einstellungen

ansonsten gäbe es z.B. auch Bei Google suchenSnagIt

jziersch 29. Nov 2023 11:10

AW: Screenshots erstellen
 
Zitat:

Zitat von Sherlock (Beitrag 1530211)
Wie wird das Programm gestartet? Die Maus zeigt ja immer auf das Icon, wenn man die Maus nutzt.

Ausschneiden und Skizzieren kann einen Screenshot nach 3 oder 10 Sekunden starten. Man hat also Zeit ein Popupmenü o.ä. zu öffnen.

Sherlock 29. Nov 2023 11:20

AW: Screenshots erstellen
 
Zitat:

Zitat von jziersch (Beitrag 1530213)
Zitat:

Zitat von Sherlock (Beitrag 1530211)
Wie wird das Programm gestartet? Die Maus zeigt ja immer auf das Icon, wenn man die Maus nutzt.

Ausschneiden und Skizzieren kann einen Screenshot nach 3 oder 10 Sekunden starten. Man hat also Zeit ein Popupmenü o.ä. zu öffnen.

Das weiß ich, ich bin aber noch mit dem Programm des Amateurprofis beschäftigt.

peterbelow 29. Nov 2023 11:32

AW: Screenshots erstellen
 
Zitat:

Zitat von Sherlock (Beitrag 1530211)
Wie wird das Programm gestartet? Die Maus zeigt ja immer auf das Icon, wenn man die Maus nutzt. Wenn man per Tastatur startet, hat sich der Focus geändert. Besser wäre es, das Programm würde ständig laufen oder meinetwegen die "Drucken" Taste Hooken, dann aber machen die zahlreichen Parameter wenig Sinn.

Win + Shift + S

Sherlock 29. Nov 2023 11:42

AW: Screenshots erstellen
 
Danke...siehe #7.

dummzeuch 29. Nov 2023 12:41

AW: Screenshots erstellen
 
Zitat:

Zitat von Sherlock (Beitrag 1530211)
Wie wird das Programm gestartet?

Steht doch im Urprsungspost: Mittels konfigurierter Tastenkürzel in Desktop-Shortrcuts.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:13 Uhr.
Seite 1 von 3  1 23      

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