Jump to content
Sign in to follow this  
SpookMeister

PixelSetColor

Recommended Posts

SpookMeister

Hey guys,

I'm looking for a way to display a small captured area of the screen. For debate lets say it is an area of 10x10 pixels.

I suppose I could use PixelGetColor and then use a whole bunch of labels (haven't tried this yet) but I'm hoping there may be another way.

Any thoughts?

-Spook


[u]Helpful tips:[/u]If you want better answers to your questions, take the time to reproduce your issue in a small "stand alone" example script whenever possible. Also, make sure you tell us 1) what you tried, 2) what you expected to happen, and 3) what happened instead.[u]Useful links:[/u]BrettF's update to LxP's "How to AutoIt" pdfValuater's Autoit 1-2-3 Download page for the latest versions of Autoit and SciTE[quote]<glyph> For example - if you came in here asking "how do I use a jackhammer" we might ask "why do you need to use a jackhammer"<glyph> If the answer to the latter question is "to knock my grandmother's head off to let out the evil spirits that gave her cancer", then maybe the problem is actually unrelated to jackhammers[/quote]

Share this post


Link to post
Share on other sites
ofLight

AutoIt Forum Link

this might work for what you want.

just press Alt+1 to save the area around the pointer 50x50pixels

#include <GDIPlus.au3>
#include <ScreenCapture.au3>
#include <WinAPI.au3>
#include <GuiConstantsEx.au3>
#include <GUIConstants.au3>
#include <Misc.au3>

HotKeySet("!1", "_Capture")
HotKeySet("{ESC}","_QuitIt")
Opt("MustDeclareVars", 1)

Global $hBMP, $hGUI1, $hBitmap, $hGraphic1, $mousepos

$hGUI1 = GUICreate("Magnifier", 100, 100, -1,   -1)
GUISetState()

While 1
    $mousepos = MouseGetPos()
    If GUIGetMsg() == $GUI_EVENT_CLOSE Then _QuitIt()
WEnd

Func _Capture()
    $hBMP = _ScreenCapture_Capture("", $mousepos[0]-25,$mousepos[1]-25,$mousepos[0]+25,$mousepos[1]+25,FALSE)

    _GDIPlus_Startup()
    $hBitmap = _GDIPlus_BitmapCreateFromHBITMAP($hBMP)

    $hGraphic1 = _GDIPlus_GraphicsCreateFromHWND($hGUI1)
    _GDIPlus_GraphicsDrawImage($hGraphic1, $hBitmap, 20, 20)

    _GDIPlus_GraphicsDispose($hGraphic1)
    _GDIPlus_ImageDispose($hBitmap)
    _WinAPI_DeleteObject($hBmp)
    _GDIPlus_Shutdown()
EndFunc

Func _QuitIt()
    Exit
EndFunc
Edited by ofLight

There is always a butthead in the crowd, no matter how hard one tries to keep them out.......Volly

Share this post


Link to post
Share on other sites
SpookMeister

Thanks, that method will actually suit my needs.


[u]Helpful tips:[/u]If you want better answers to your questions, take the time to reproduce your issue in a small "stand alone" example script whenever possible. Also, make sure you tell us 1) what you tried, 2) what you expected to happen, and 3) what happened instead.[u]Useful links:[/u]BrettF's update to LxP's "How to AutoIt" pdfValuater's Autoit 1-2-3 Download page for the latest versions of Autoit and SciTE[quote]<glyph> For example - if you came in here asking "how do I use a jackhammer" we might ask "why do you need to use a jackhammer"<glyph> If the answer to the latter question is "to knock my grandmother's head off to let out the evil spirits that gave her cancer", then maybe the problem is actually unrelated to jackhammers[/quote]

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×