Archiv verlassen und diese Seite im Standarddesign anzeigen : [C++] Pixel-Search und Pixel-GetByColor Befehle
Milchbox
30.03.2006, 14:35
Also ich hab schon überall gegoogelt, aber nichts über ne Pixel-Search API oder Befehle der Win API gefunden. Ich will nähmlich ein Programm machen welches selbst Websiten erstellt ;)
Ich bräuchte jetzt ne API oder Befehle für Pixelsearch und GetByColor. Falls es da was gibt bitte posten ^^
Was ist denn Pixelsearch? Ich versteh die Frage nicht. ^^
Generell bietet die Standard-Bibliothek von C++ keinerlei Funktionen für Grafiken. Du wirst wohl auf eine API zurückgreifen müssen. Und da sollte die WinAPI eigentlich ausreichende Funktionen bieten. Und wenn du das noch etwas genauer erklärst, was diese Funktion können soll (kann mir unter Pixelsearch nichts vorstellen), dann kann dir da vielleicht geholfen werden. ;)
Milchbox
30.03.2006, 15:04
Ich suche einen Befehl der den Bildschirm nach einen bestimmten Pixel absucht. Wenn dieser Pixel gefunden wurde wird Befehl BlaBlaBla ausgeführt. So mein ich das ^^
Crash-Override
30.03.2006, 15:53
Jede Farbe (das meist du wohl mit Pixel, denn Pixel werden durch die Koordinaten festgelegt und müssen deshalb nicht gesucht werden) kann aber Breite*Höhe oft vorkommen, also zeimlich oft. Vll suchst du mal nach Funktionen um auf dem Desktop "zu zeichnen".
Milchbox
30.03.2006, 16:02
Jede Farbe (das meist du wohl mit Pixel, denn Pixel werden durch die Koordinaten festgelegt und müssen deshalb nicht gesucht werden)
Mein ich ja ^^
Am naheliegensten wär ja sowas wie GetPixel und siehe da, in der WinAPI gibt es eine Funktion die so heißt. ;)
Damit kannst du Pixelweise jeden Pixel durchlaufen und erhälst die RGB des Pixels. Daraus kannst du dann Rückschküsse ziehen, ob das die gewünschte Farbe ist oder nicht.
So eine Suchfunktion (RGB eingeben und Pixelkoordinaten ausgeben lassen) ist mir nicht bekannt. Du musst dir also eine Routine schreiben die alle Pixel nach den Farben durchscannt. Und ich sag dir, das kann bei 1024 x 768 viel Leistung beanspruchen, du solltest überlegen ob das wirklich nötig ist. ;)
Alternativ kann man das afaik auch noch so machen, dass man sich vom aktuellen Bildschirminhalt einen Memorycontext erstellt und dann direkt im Speicher die Farbwerte ausließt. Geht vielleicht schneller als die vorgegebene GetPixel-Funktion der WinAPI...
MagicMagor
30.03.2006, 18:36
Wieso willst du eigentlich Pixel einzeln auslesen? Insbesondere wenn dein Programm Webseiten erstellen soll, finde ich da überhaupt keinen Zusammenhang. Wenn du genauer erläuterst wofür das brauchst kann man vielleicht eine bessere Lösung finden.
Denn wie Ynnus bereits sagte ist das ganze extrem leistungszehrend. Sowas macht eigentlich nur wenns anders nicht geht.
Powered by vBulletin® Version 4.2.3 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.