本文目錄一覽:
- 1、C語言怎麼實現截圖
- 2、c語言截屏
- 3、c語言運行結果如何截屏
C語言怎麼實現截圖
1、用C語言實現windows程序截圖,太麻煩。建議用C++做比較好。
2、截圖常式:
#ifndef CAPTUREBLT
#define CAPTUREBLT 0x40000000
#endif
HBITMAP CaptureScreen(LPRECT lpRect)//lpRect為NULL時表示全屏幕截圖
{
HDC hdc, hdcMem ;
HBITMAP hemfCopy ;
HWND hwndScr ;
int dstcx, dstcy ;
if(lpRect)
{
dstcx = lpRect-right – lpRect-left ;
dstcy = lpRect-bottom – lpRect-top ;
}
else
{
dstcx = GetSystemMetrics(SM_CXSCREEN) ;
dstcy = GetSystemMetrics(SM_CYSCREEN) ;
}
if (LockWindowUpdate(hwndScr = GetDesktopWindow ()))
{
hdc = GetDCEx (hwndScr, NULL, DCX_CACHE | DCX_LOCKWINDOWUPDATE) ;
hdcMem = CreateCompatibleDC (hdc) ;
if(NULL==hdcMem)
{
ReleaseDC (hwndScr, hdc) ;
LockWindowUpdate (NULL) ;
return NULL;
}
hemfCopy = CreateCompatibleBitmap (hdc, abs(dstcx), abs(dstcy)) ;
if(NULL==hemfCopy)
{
DeleteDC (hdcMem) ;
ReleaseDC (hwndScr, hdc) ;
LockWindowUpdate (NULL) ;
return NULL;
}
SelectObject (hdcMem, hemfCopy) ;
if(lpRect)
StretchBlt (hdcMem, 0, 0, abs(dstcx), abs(dstcy),
hdc, lpRect-left, lpRect-top, dstcx, dstcy, SRCCOPY|CAPTUREBLT) ;
else
BitBlt (hdcMem, 0, 0, dstcx, dstcy,
hdc, 0, 0, SRCCOPY|CAPTUREBLT) ;
DeleteDC (hdcMem) ;
ReleaseDC (hwndScr, hdc) ;
LockWindowUpdate (NULL) ;
return hemfCopy;
}
return NULL;
}
c語言截屏
按照操作上從易到難的順序,給你推薦五種截屏方式 :
第一種:Ctrl+PrScrn使用這個組合鍵截屏,獲得的是整個屏幕的圖片;
第二種:Alt+PrScrn這個組合鍵截屏,獲得的結果是當前窗口的圖片;
(上面兩種方法,然後在桌面點右鍵新建「圖畫」或「BMP圖像」,粘貼即可;也可以在Photoshop中新建文件,粘貼即可。)
第三種:打開q q,使用快捷鍵Ctrl+Alt+A, 這樣可以在屏幕上的任何地方截屏,右鍵選中截圖「另存為…」,還可以在截屏圖片上做一些簡單的注釋和處理;
第四種:在淘寶旺旺對話框中,有截圖工具,操作方法類似Q Q截圖;
第五種:使用專業的截屏軟體。 推薦Snagit,專業軟體的截屏效果更加強大,可識別和提取截圖中的文字。
c語言運行結果如何截屏
1 使用系統截屏功能。
需要使用按鍵print screen.在鍵盤上印的是prt sc。
單獨使用該鍵,會截整個屏幕,如果用alt+prt sc,則會截取當前窗口的部分。
截屏後,數據會報存在剪貼板中,這時可以打開系統畫圖工具,或者任意圖形編輯工具,粘貼。即可得到截屏後的數據,保存成文件即可。如果需要裁剪,也可以在這類工具中操作。
2 使用工具進行截屏。
目前提供快捷截屏的軟體很多,比如qq,搜狗輸入法,搜狗瀏覽器等都有截屏工具提供。
比如qq默認的截屏快捷鍵是ctrl+alt+a。同時按下三個鍵,會發現滑鼠箭頭變成彩色,這時點擊並選擇需要截屏的區域,雙擊即可完成截屏,將圖片保存在內存中。
也可以在截屏後,直接保存成文件。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/187141.html