次の関数を使用して、Webページのスクリーンショットを撮っています。
function my2()
{
$Browser = new COM('InternetExplorer.Application');
$Browserhandle = $Browser->HWND;
$Browser->Visible = true;
$Browser->Fullscreen = true;
$Browser->Navigate('http://www.tatvic.com');
while ($Browser->Busy)
{
com_message_pump(4000);
}
$img = imagegrabwindow($Browserhandle, 0);
$Browser->Quit();
imagepng($img, 'screenshot.png');
}
これはうまくいきます。ただし、これはスクリーン ショットであるため、ページ全体を撮影しているわけではありません。つまり、スクロールして表示できるページの一部を取得していないということです。
スクリプトが最初にページを25%または35%にズームアウトするか、a4サイズに変換してからスクリーンショットを撮り、ページ全体の画像を保存できるようにするにはどうすればよいですか??? .
ありがとうございました。