2009-03-09 3 views

답변

4

imagegrabscreen 또는 imagegrabwindow으로 무엇인가 할 수는 있지만 Windows 상자에서만 사용할 수 있습니다. 그렇더라도 까다 롭습니다.

지정한 URL로 브라우저 창을 열어야합니다 (exec로 할 수 있음). 앞에서 설명한 방법을 사용하여 스크린 샷을 가져와야합니다.

여기 imagegrabwindow의 수동 입력의 예입니다 :

<?php 
$browser = new COM("InternetExplorer.Application"); 
$handle = $browser->HWND; 
$browser->Visible = true; 
$browser->Navigate("http://www.libgd.org"); 

/* Still working? */ 
while ($browser->Busy) { 
    com_message_pump(4000); 
} 
$im = imagegrabwindow($handle, 0); 
$browser->Quit(); 
imagepng($im, "iesnap.png"); 
imagedestroy($im); 
?> 
+0

Hi Ross, 위의 코드는 다음과 같은 오류/경고를 나타냅니다. PHP 경고 : 모듈 'gd'가 이미 Unknown으로로드되었습니다. PHP 치명적 오류 : 캐치되지 않은 예외 'com_exception 'with message'COM 객체 생성 실패'InternetExplorer.Application ': 액세스가 거부되었습니다. ' –

+0

imagegrabscreen을 사용하는 데 문제가 있습니다. 내가 말했듯이, 나는 매뉴얼에서 그 코드만을 복사했다. 내가 제안 할 수있는 것은 http://php.net/imagegrabscreen (아파치를 사용하고 있다고 가정)에서 노트를 따라하는 것이다. – Ross

+0

(Vista에서 Apache 데스크탑 지원을 사용하는 경우 서비스와 서버를 다시 시작하면 작동하지 않음) – Ross

1

웹 사이트는 클라이언트 측에서 렌더링되는, PHP와 GD가 서버 측 동안. this website도 확인할 수 있습니다. 희망이 도움이됩니다.

+0

링크 감사합니다. 작동하지만 HTML5/캔버스가 구현되지 않았 으면합니다. [이 솔루션] (http://stackoverflow.com/a/11736196/903186) 잘 작동합니다. – Ruut

관련 문제