0

我使用下面的代码,然后将结果保存在 jpg 文件中。但有时我只得到黑色图像。它并非一直都在发生,我能做些什么来防止它?没有抛出错误,只有一些屏幕截图是黑色的。我在 Windows 上运行它。

 $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();
4

1 回答 1

1

更换sleep(5)imagegrabwindow(...)

它帮助我解决了同样的问题

我的代码是:

$im = imagegrabwindow($handle, 0);
imagejpeg($im, "test.jpg");
sleep(5);
$browser->Quit();
imagedestroy($im);
于 2013-05-07T10:16:06.513 回答