Is it possible to use printscreen to save an image Topic is solved
Is it possible to use printscreen to save an image
I want to use printscreen key to capture the screen and then save an image file.
-
- Posts: 15
- Joined: 24 Feb 2019, 15:21
Re: Is it possible to use printscreen to save an image
Here's a script I wrote that does just that
Code: Select all
^q::
sleep, 100
send {PrintScreen}
sleep, 500
run MSPaint
Sleep, 1000
Send, #{Up}
Sleep, 500
Mouseclick, left, 250, 250, 5
Sleep, 200
send ^v
sleep, 500
Send ^s
Random, filename, 10000, 99999
Sleep, 500
Send %filename%
Sleep, 500
Send ^l
Sleep, 200
Send, desktop
Loop, 5 {
Send, {enter}
Sleep, 300
}
Re: Is it possible to use printscreen to save an image Topic is solved
I use Gdip.ahk by tic to save the screenshot as file.
btw, you can use other Hotkey, not just PrintScreen
Here is the link:
https://github.com/tariqporter/Gdip/
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=6517
btw, you can use other Hotkey, not just PrintScreen
Code: Select all
#Include Gdip.ahk
PrintScreen::
CurrentDate := A_YYYY "-" A_MM "-" A_DD
CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec
Screenshot(CurrentDate "_" CurrentTime ".png")
Return
Screenshot(OutFile)
{
pToken := Gdip_Startup()
screen=0|0|%A_ScreenWidth%|%A_ScreenHeight%
pBitmap := Gdip_BitmapFromScreen(screen)
Gdip_SaveBitmapToFile(pBitmap, OutFile, 100)
Gdip_DisposeImage(pBitmap)
Gdip_Shutdown(pToken)
}
https://github.com/tariqporter/Gdip/
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=6517
Re: Is it possible to use printscreen to save an image
Thank you very much.zayntheboss wrote: ↑22 Apr 2019, 09:03Here's a script I wrote that does just that
Code: Select all
^q:: sleep, 100 send {PrintScreen} sleep, 500 run MSPaint Sleep, 1000 Send, #{Up} Sleep, 500 Mouseclick, left, 250, 250, 5 Sleep, 200 send ^v sleep, 500 Send ^s Random, filename, 10000, 99999 Sleep, 500 Send %filename% Sleep, 500 Send ^l Sleep, 200 Send, desktop Loop, 5 { Send, {enter} Sleep, 300 }
Re: Is it possible to use printscreen to save an image
Thanks for your direction.Ridwan wrote: ↑22 Apr 2019, 09:12I use Gdip.ahk by tic to save the screenshot as file.
btw, you can use other Hotkey, not just PrintScreen
Here is the link:Code: Select all
#Include Gdip.ahk PrintScreen:: CurrentDate := A_YYYY "-" A_MM "-" A_DD CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec Screenshot(CurrentDate "_" CurrentTime ".png") Return Screenshot(OutFile) { pToken := Gdip_Startup() screen=0|0|%A_ScreenWidth%|%A_ScreenHeight% pBitmap := Gdip_BitmapFromScreen(screen) Gdip_SaveBitmapToFile(pBitmap, OutFile, 100) Gdip_DisposeImage(pBitmap) Gdip_Shutdown(pToken) }
https://github.com/tariqporter/Gdip/
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=6517
Re: Is it possible to use printscreen to save an image
If I want to use Gdip.ahk to select a rectangle area of the screen manually and save it as an image, how to do that, thanks.
Re: Is it possible to use printscreen to save an image
I just posted a script here that has that written into it.
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=60949
It only draws on the main monitor, but can be tweaked to work on any monitor, in fact, I just wrote a class yesterday that I intend to use for these tasks.
https://www.autohotkey.com/boards/viewtopic.php?f=76&t=65366
There are a few functions in that first script that use my own custom gdip functions. They can be found in the lower part of the script.
If you need help picking out the code let me know.
Good luck.
Re: Is it possible to use printscreen to save an image
Thanks for your help, your scrip is a bit complex for a newbie like me.Hellbent wrote: ↑13 Jun 2019, 20:49I just posted a script here that has that written into it.
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=60949
It only draws on the main monitor, but can be tweaked to work on any monitor, in fact, I just wrote a class yesterday that I intend to use for these tasks.
https://www.autohotkey.com/boards/viewtopic.php?f=76&t=65366
There are a few functions in that first script that use my own custom gdip functions. They can be found in the lower part of the script.
If you need help picking out the code let me know.
Good luck.
Use that function?
Gdip_DrawRectangle(pGraphics, pPen, x, y, w, h){
Ptr := A_PtrSize ? "UPtr" : "UInt"
return DllCall("gdiplus\GdipDrawRectangle", Ptr, pGraphics, Ptr, pPen, "float", x, "float", y, "float", w, "float", h)
}
Re: Is it possible to use printscreen to save an image
Yes that function is what you use to draw your rectangle.songdg wrote: ↑17 Jun 2019, 01:57Thanks for your help, your scrip is a bit complex for a newbie like me.
Use that function?
Gdip_DrawRectangle(pGraphics, pPen, x, y, w, h){
Ptr := A_PtrSize ? "UPtr" : "UInt"
return DllCall("gdiplus\GdipDrawRectangle", Ptr, pGraphics, Ptr, pPen, "float", x, "float", y, "float", w, "float", h)
}
The other day I took the scripts I linked you to and created a little script that does a image search. It might be helpful to you.
Once again it is a bit complex but it has drawing a rectangle, taking a screenshot, setting a search area and running a search.
https://www.autohotkey.com/boards/viewtopic.php?f=76&t=65438
A few months ago someone had asked me how to draw a rectangle to their screen so I made a little video that covers it step by step.
If you find the script in the thread I posted to complex, this should make things easy for you.
https://www.youtube.com/watch?v=80FhzIm9IQQ
Let me know how it works out for you.
Re: Is it possible to use printscreen to save an image
Hello, is it possible to change mouse cursor to square about 10x10 pixels and take screenshot when I click mouse buton in mouse position?
Re: Is it possible to use printscreen to save an image
I just discovered this software a few hours ago and I don't know any coding, but as I reviewed the tutorials a bit, I guess there's a much easier way to do so:Ridwan wrote: ↑22 Apr 2019, 09:12I use Gdip.ahk by tic to save the screenshot as file.
btw, you can use other Hotkey, not just PrintScreen
Here is the link:Code: Select all
#Include Gdip.ahk PrintScreen:: CurrentDate := A_YYYY "-" A_MM "-" A_DD CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec Screenshot(CurrentDate "_" CurrentTime ".png") Return Screenshot(OutFile) { pToken := Gdip_Startup() screen=0|0|%A_ScreenWidth%|%A_ScreenHeight% pBitmap := Gdip_BitmapFromScreen(screen) Gdip_SaveBitmapToFile(pBitmap, OutFile, 100) Gdip_DisposeImage(pBitmap) Gdip_Shutdown(pToken) }
https://github.com/tariqporter/Gdip/
https://www.autohotkey.com/boards/viewtopic.php?f=6&t=6517
Code: Select all
PrintScreen::
Send, #{PrintScreen}
I myself prefer to go with something handier like Alt+Space:
Code: Select all
!Space::
Send, #{PrintScreen}
Re: Is it possible to use printscreen to save an image
I am new to ahk so i don't that much of it want to change the place where it saves the .png how do i do thatRidwan wrote: ↑22 Apr 2019, 09:12I use Gdip.ahk by tic to save the screenshot as file.
btw, you can use other Hotkey, not just PrintScreen
Here is the link:Code: Select all
#Include Gdip.ahk PrintScreen:: CurrentDate := A_YYYY "-" A_MM "-" A_DD CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec Screenshot(CurrentDate "_" CurrentTime ".png") Return Screenshot(OutFile) { pToken := Gdip_Startup() screen=0|0|%A_ScreenWidth%|%A_ScreenHeight% pBitmap := Gdip_BitmapFromScreen(screen) Gdip_SaveBitmapToFile(pBitmap, OutFile, 100) Gdip_DisposeImage(pBitmap) Gdip_Shutdown(pToken) }
https://github.com/tariqporter/Gdip/
viewtopic.php?f=6&t=6517
Re: Is it possible to use printscreen to save an image
Like this for an absolute path:
Code: Select all
Screenshot("C:\PathToMyFile\" CurrentDate "_" CurrentTime ".png")
You can also use relative paths. This would place it in a folder named "Images" inside the script's working directory:
Code: Select all
Screenshot("Images\" CurrentDate "_" CurrentTime ".png")
In both cases, make sure the folder exists.
Re: Is it possible to use printscreen to save an image
Where was it saving and doesn't matter where I place this in the script?boiler wrote: ↑06 Jan 2022, 13:19Like this for an absolute path:Code: Select all
Screenshot("C:\PathToMyFile\" CurrentDate "_" CurrentTime ".png")
Re: Is it possible to use printscreen to save an image
It saves it wherever you define the path. You have to replace "C:\PathToMyFile\" with the path to where you want the files saved on your drive. It doesn't matter where you place the script on your drive if you specify the full path for where to save the screenshots.LAPIII wrote: ↑Where was it saving and doesn't matter where I place this in the script?boiler wrote: ↑ Like this for an absolute path:Code: Select all
Screenshot("C:\PathToMyFile\" CurrentDate "_" CurrentTime ".png")
Re: Is it possible to use printscreen to save an image
@boiler, why doesn't this save the screenshot and can I prevent it from copying to the clipboard? (I only edited lines are 1 and 7):
Code: Select all
#Include C:\Users\LPIII\Documents\AutoHotkey\Lib\GDIP_All.ahk
^PrintScreen::
CurrentDate := A_YYYY "-" A_MM "-" A_DD
CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec
Screenshot("C:\Users\LPIII\Pictures" CurrentDate "_" CurrentTime ".png")
Return
Screenshot(OutFile)
{
pToken := Gdip_Startup()
screen=0|0|%A_ScreenWidth%|%A_ScreenHeight%
pBitmap := Gdip_BitmapFromScreen(screen)
Gdip_SaveBitmapToFile(pBitmap, OutFile, 100)
Gdip_DisposeImage(pBitmap)
Gdip_Shutdown(pToken)
}
Re: Is it possible to use printscreen to save an image
You removed the backslash that would separate the folder name from the start of the file name. You have:
It needs to be:
What you have would produce the path C:\Users\LPIII\Pictures2022-02-08_19-58-25.083.png
...instead of: C:\Users\LPIII\Pictures\2022-02-08_19-58-25.083.png
So if you look in your folder named C:\Users\LPIII, you probably have generated a bunch of files that have names similar to: Pictures2022-02-08_19-58-25.083.png
Code: Select all
Screenshot("C:\Users\LPIII\Pictures" CurrentDate "_" CurrentTime ".png")
Code: Select all
Screenshot("C:\Users\LPIII\Pictures\" CurrentDate "_" CurrentTime ".png")
What you have would produce the path C:\Users\LPIII\Pictures2022-02-08_19-58-25.083.png
...instead of: C:\Users\LPIII\Pictures\2022-02-08_19-58-25.083.png
So if you look in your folder named C:\Users\LPIII, you probably have generated a bunch of files that have names similar to: Pictures2022-02-08_19-58-25.083.png
Re: Is it possible to use printscreen to save an image
@boiler How can I also save with the active window title?
Code: Select all
^PrintScreen::
CurrentDate := A_YYYY "-" A_MM "-" A_DD
CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec
Screenshot("C:\Users\LPIII\Pictures\" CurrentDate "_" CurrentTime ".png")
Return
Re: Is it possible to use printscreen to save an image
Code: Select all
^PrintScreen::
CurrentDate := A_YYYY "-" A_MM "-" A_DD
CurrentTime := A_Hour "-" A_Min "-" A_Sec "." A_MSec
WinGetActiveTitle, Title
Screenshot("C:\Users\LPIII\Pictures\" Title "_" CurrentDate "_" CurrentTime ".png")
Return
Re: Is it possible to use printscreen to save an image
boiler wrote :
yes, example to remove all not allowed characters :Caution: The title could contain unallowable file name characters, so you may want to clean it up first.
Code: Select all
transform,s,chr,34
title:=" This is : a test < see here \ / | ? > " . s . " title 你好 " . s . " END "
msgbox,OLDTITLE="%title%"
newStr := RegExReplace(title, "[<>:""/\\|?*]")
NewTitle:=RegExReplace(newstr,"\x20{2,}"," ") ;- keep only one space
newtitle=%newtitle%
msgbox,NEWTITLE="%newtitle%"
;-
;-- remove in Title if used for Fileappend :
/*
Use any character in the current code page for a name, including Unicode characters and characters in the extended character set (128–255), except for the following:
The following reserved characters:
https://docs.microsoft.com/en-us/windows/win32/fileio/naming-a-file#naming-conventions
< (less than)
> (greater than)
: (colon)
" (double quote)
/ (forward slash)
\ (backslash)
| (vertical bar or pipe)
? (question mark)
* (asterisk)
*/