"Makros" programmieren

Für allgemeine Fragen zur Programmierung mit PureBasic.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

"Makros" programmieren

Beitrag von ZeHa »

Hallo!

Gerade vorhin hatte ich wieder die Situation: ich will viele viele Bilder, die mit der Digitalkamera gemacht wurden, auf 40% verkleinern. Also kann ich in meinem Grafikprogramm hundertmal genau die gleichen Schritte durchführen.

Da wünsche ich mir meistens, daß ich ein Programm programmieren könnte, das Tastatur- und/oder Mauseingaben simulieren kann. Daß das Programm mir praktisch alle Bilder in meinem Grafikprogramm öffnet, dann für jedes einzelne auf "Bildgröße ändern" geht, dann 40% eingibt, auf OK klickt, das Bild abspeichert.

Frage: ist das in Purebasic möglich? Kann ich da einfach so ohne weiteres Tastatureingaben senden? Weil wenn JA dann wäre das natürlich optimal. Und dann käme natürlich die Frage WIE :)

Vielen Dank schonmal im Voraus!
Benutzeravatar
memdee
Beiträge: 134
Registriert: 09.09.2004 18:49
Computerausstattung: Win 7 x64
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von memdee »

Ich bezweifle dass das geht (zumindest meinem Wissen nach, ahem ;) ).
Was du aber machen könntest wäre ein eigenes Programm dass die Bilder automatisch verkleinert - ist sicherlich weniger Aufwand als ein Programm das ein anderes Programm "bedient" :wink:
meep?
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Naja praktischer wäre das sicherlich, zumal man das Programm dann auch an andere Leute weitergeben könnte, die dann auch einen Nutzen daraus ziehen könnten.

Aber ehrlich gesagt stell ICH es mir wiederum schwieriger vor. Schließlich muß man dann ja auch Anti-Aliasing miteinbauen (damit das verkleinerte Bild nicht seltsam aussieht) etc. Also wie schwierig wäre sowas?

Nochmal zu den "Makros": es gibt halt schon unendlich viele Situationen, wo man sowas will. Mein Vater will z.B. immer daß ich ihm seine neuen Fotos auf CD brenne, weil er es selber nicht blickt. Da wäre ein Automatisierungsprogramm auch wieder gut. Ansonsten müßte ich ja gleich ein neues Brennprogramm schreiben, und ich glaub kaum, daß das einfacher ist :)

In Visual Basic gibt es so 'ne Tasten-Sendefunktion. Allerdings hat die nie so wirklich funktioniert, wie ich es wollte. Darum denk ich aber, daß es in PureBasic auch sowas geben MUSS (ich weiß halt nur nicht, wie und wo). Und das es evtl. sogar besser als in Visual Basic funktioniert... ;)
Benutzeravatar
Kiffi
Beiträge: 10719
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

ZeHa hat geschrieben:ich will viele viele Bilder, die mit der Digitalkamera gemacht
wurden, auf 40% verkleinern.
nimm Irfanview.
ZeHa hat geschrieben:In Visual Basic gibt es so 'ne Tasten-Sendefunktion.
Allerdings hat die nie so wirklich funktioniert, wie ich es wollte.
dann hast Du einen Fehler in Deiner Programmierung gehabt.

Grüße ... Kiffi
Benutzeravatar
AndyMars
Beiträge: 141
Registriert: 08.09.2004 11:59
Computerausstattung: Win11 Prof 64bit, i5-13500 @ 4.8 GHz, 32GB RAM, Nvidia RTX 4070 TI
Wohnort: Zürich, Schweiz
Kontaktdaten:

Beitrag von AndyMars »

Hier gibt es einen einfachen Mausrekorder:

http://purebasic.myforums.net/viewtopic ... 2244#32244
Grüsse von AndyMars
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8820
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Ich benutze für soetwas XnView.

Der Mausrekorder von Mischa funktioniert natürlich auch, aber ich finde etwas unnötig, die Maus bewegen zu lassen um eine bestimmte Aktion auszuführen. Da nimmt man doch lieber ein Programm, dass eine ganze Liste von Dateien bzw. hier Bildern auf einmal konvertieren kann.
Benutzeravatar
stbi
Beiträge: 685
Registriert: 31.08.2004 15:39
Wohnort: Cleverly Hills

Beitrag von stbi »

NicTheQuick hat geschrieben:Ich benutze für soetwas XnView.

Der Mausrekorder von Mischa funktioniert natürlich auch, aber ich finde etwas unnötig, die Maus bewegen zu lassen um eine bestimmte Aktion auszuführen. Da nimmt man doch lieber ein Programm, dass eine ganze Liste von Dateien bzw. hier Bildern auf einmal konvertieren kann.
Full ACK, sehe ich genauso und ich bevorzuge ebenfalls XnView.

Alternativ würde ich PB nehmen, um mir meinen eigenen Konverter zu schreiben, falls ich solche Konversion ständig und vielleicht automatisiert durchführen muss. Auch dazu gibt es einen Beitrag im (alten) Forum.
PB 4.02 XP Pro SP2 "Der Code ist willig, aber der Prozessor ist schwach."

Es gibt keine Vista-Witze. Es ist alles wahr!
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Okay danke erstmal, somit hätt ich schonmal Lösungen für das oben genannte Problem.

Trotzdem würde es mich halt interessieren, ob es so eine Tastenfunktion gibt, schließlich gibt's noch viel mehr Möglichkeiten, was man so alles machen kann, als Bilder zu verkleinern...
Benutzeravatar
NicTheQuick
Ein Admin
Beiträge: 8820
Registriert: 29.08.2004 20:20
Computerausstattung: Ryzen 7 5800X, 64 GB DDR4-3200
Ubuntu 24.04.2 LTS
GeForce RTX 3080 Ti
Wohnort: Saarbrücken

Beitrag von NicTheQuick »

Mit XnView hast du 54 Möglichkeiten, also Effekte und Filter, die du auf mehrere Bilder gleichzeitig anwenden kannst. Die Größenänderung ist auch nicht nur absolut, sondern kann auch relativ in Prozenten angegeben werden, womit das Seitenverhältnis automatisch eingehalten bleibt und vieles mehr...
Einfach ausprobieren, ist völlig kostenlos, das ganze...
RolandIV
Beiträge: 28
Registriert: 11.09.2004 13:33

Beitrag von RolandIV »

du kannst ereignisse simulieren. Dagibt es zwei API Befehle:
1: mouse_event()
Beschreibung:
http://msdn.microsoft.com/library/defau ... _event.asp

2: keybd_event()
Beschreibung:
http://msdn.microsoft.com/library/en-us ... frame=true


ansonsten probiers mal mit SendMessage()
Antworten