bitblt

    1熱度

    1回答

    這個問題類似於this one,特別是this one但我期望的輸出是不同的。我試圖使用opencv捕獲桌面到視頻。首選的輸出是使用divx編碼的avi文件。一般來說,我對opencv和位圖編程是新手。 作爲第一步,爲了確保divx編解碼器存在,我創建了一個純色(黃色)的單幀(cv :: Mat),並將100次寫入視頻文件,如下所示: int main(int argc, char* argv[]

    1熱度

    1回答

    與CScrollWindowImpl void Scroll::DoPaint(CDCHandle hDC) { if (_MemDC==NULL) return; RECT r; //I'd like to update r with rcPaint from the DC's PAINTSTRUCT here hDC.BitBl

    0熱度

    1回答

    我有一個Windows 10的大問題,通常我使用PIL(Python)從程序中獲得一個很好和乾淨的屏幕截圖。 但與Windows 10這不工作了,現在我只成爲桌面上的所有東西,但我的FullScreen窗口丟失。 我也tryed使用: BitBlt(screen_copy, 0, 0, width, height, screen, left, top, SRCCOPY | CAPTUREBLT)

    0熱度

    1回答

    我正在使用emf進行緩衝區繪製的應用程序。我試圖使用BitBlt將此emf保存到位圖圖像文件。但沒有圖紙保存到位圖。我知道我可以使用PlayEnhMetaFile(),但我必須使用BitBlt或GDI/GDI +調用。因爲在將其保存到位圖後會有其他一些繪圖調用。 示例代碼。 void CTestGUIApplicationView::OnDraw(CDC* pDC) { CRect oRect

    5熱度

    1回答

    我目前正在從Qt3移植到Qt5的開源解決方案(Albatross ATM解決方案http://www.albatross.aero/)。 信天翁是一個空中交通觀衆,需要非常好的表演。 我已經能夠管理的各種問題,但不是顯示部分。 顯示架構基於bitblt命令,該命令首先將一個像素圖複製到另一個像素圖中,最後將像素圖複製到屏幕。 這裏是QT3顯示代碼(工作和高性能): void CAsdView::p

    0熱度

    1回答

    我想更好地理解Visual C++的怪癖。因此,我已經到了製作一個空窗開始的節目的階段,但是當你點擊時,會出現紅色和藍色方格的檢查板(它對眼睛不好,但是它有效)。如果再次單擊它們,方塊也會在兩種顏色之間交替。每個正方形都是100x100像素,我在我的項目文件夾中有它們的圖像文件(我知道我可以使用BitBlt的最後兩個整數區域來使用一個半藍色,半紅色的圖像,因此不需要toPaint,但是這不是這裏的

    1熱度

    1回答

    上午使用bitblt API來捕獲窗口屏幕大約需要30到40毫秒,但我想以更快的方式做到這一點,所以是任何其他內置API或建議我最好的屏幕捕獲驅動程序。 這是我的代碼。 ret = BitBlt(m_pGDI->hDoubleBufferWorker,0,0,this->m_screenWidth, this->m_screenHeight,hDisplayDC,this->m_sc

    0熱度

    1回答

    我的程序的目的是每1/16秒進行一次屏幕截圖,並通過套接字發送給遠程服務器。 目前這個程序可以使用BMP格式的屏幕截圖,但是BMP格式的數據有太多的字節要發送,這顯然會拖慢send和recv過程。 我的想法是:如果我可以將BMP轉換成PNG,並在發送之前壓縮它,也許程序可以更順暢地工作。 這裏是我的代碼,從gh0st項目 LPVOID m_lpvFullBits = NULL; HDC m_hF

    -2熱度

    1回答

    我試圖在C++中創建一個屏幕捕獲DLL並將生成的字節數組發送到C#。 我能夠得到返回到C#的大小,但字節數組始終爲空。 這裏的C++代碼(由位的我在互聯網上找到) __declspec(dllexport) int ScreenCap(BYTE* *data, DWORD *size) { try { //BITMAP bmpScreen; HWND De

    1熱度

    1回答

    我創建了一個客戶端,它通過TCP向服務器發送屏幕截圖。圖像發送成功。然而,在接收時,圖像是顛倒的(我知道這是由結構的一個屬性中的負高度設置的)。 我在互聯網上搜索的方式,但我找不到一個正確的方式來實現這一點。所以,如果有更好的方式做到這一點,請糾正我。 這是我送的截圖(客戶端): HDC ScreenDC = GetDC(0); HDC hMemory = CreateCompatibleDC(