2013-04-11 99 views
0

我使用下面的代碼,然後將結果保存在jpg文件中。但有時我只能得到一個黑色的圖像。這不是一直在發生,我能做些什麼來阻止它呢?沒有錯誤拋出,只有一些截圖是黑色的。我在Windows上運行它。PHP在屏幕截圖時獲取黑色圖像

$browser = new com('internetexplorer.application'); 
    $browserhandle = $browser->hwnd; 
    $browser->visible = true; 
    $browser->fullscreen = true; 
    $browser->navigate('http://www.example.com'); 
    while ($browser->busy) { 
     com_message_pump(1000); 
     if ($timer + $timelimit < time()) { 
      $browser->stop(); 
      break; 
     } 
    } 
    sleep(5); 
    $img = imagegrabwindow($browserhandle, 0); 
    $browser->Quit(); 

回答

1

更換sleep(5)imagegrabwindow(...)

它幫助我解決同樣的問題

我的代碼是:

$im = imagegrabwindow($handle, 0); 
imagejpeg($im, "test.jpg"); 
sleep(5); 
$browser->Quit(); 
imagedestroy($im);