Как мога да получа моментна снимка или миниатюра на уеб страница с помощта на PHP?

Трябва да създам моментни снимки/снимки/преглед на сайта a-site.com.

Има сайт като thumbshot.org, който отговаря на нуждата ми. Но не искам да използвам външна услуга, да не завися от други за моя проект (Какво ще стане, ако затворят сайта?)

Поради тази причина търся някакъв проект, който да ми позволи да направя това.

Някаква идея?


person Community    schedule 14.01.2009    source източник


Отговори (5)


В Windows можете да използвате функцията imagegrabwindow() на GD.

Редактиране: Помощната страница всъщност ви показва как да вземете екранна снимка от IE.

person Greg    schedule 14.01.2009
comment
Благодаря. Сега поне имам идея къде да отида. Не знаех тази функция. Ще се опитам да направя скрипт, който генерира snap и автоматично преминава през tftp - person ; 14.01.2009

В библиотеката на PHP няма нищо, което да прави това - гледате да настроите външно приложение (с опашка), за да правите изображения, въпреки че можете, разбира се, да използвате PHP, за да добавяте елементи към опашката.

Има няколко функции на Windows в GD, които правят екранни снимки на компютъра (уеб сървъра - не клиента), така че може би бихте могли да напишете скрипт на PHP, за да направите това.

Редактиране: Мислех за тези: imagegrabscreen и imagegrabwindow. Не съм сигурен обаче, че ще направят това, което искате (дори в режим на цял екран Firefox има синя лента в горната част на екрана - не съм сигурен за други браузъри). Въпреки това Pierre има нещо за тези функции ако се интересувате.

Бих предложил да напишете приложение на друг език (предполагам, че .NET има нещо), което да направи това вместо вас. Редактиране: Тази страница ви казва как да го направите в C#

person Ross    schedule 14.01.2009

PHP няма много работа за вас в тази ситуация. Ще ви е необходим пълен (X)HTML механизъм за изобразяване с поддръжка на CSS, вероятно и с поддръжка на JavaScript.

Това или използвайте някакъв извратен скрипт, който да стартира истински браузър и да направите екранна снимка от него. Така или иначе PHP вероятно не е правилният инструмент за оперативната част.

person Henrik Paul    schedule 14.01.2009

Има разширение за Firefox, което преобразува уеб страницата, която разглеждате, в изображение:

http://www.screengrab.org/

http://addons.mozilla.org/en-US/firefox/addon/1146

Ако желаете да проявите творчество, може да е възможно да получите достъп до това проблематично.

person TravisO    schedule 14.01.2009

Благодаря на всички. Намерих псевдо-решение (с помощта на dcom + imagegrabscreen + wamp). Трябва да преоразмеря final.png с gd, защото png е равен на разделителната способност на клиента (в дома ми е картина от 1650*1280). Когато приключа с това, ще публикувам .zip файл за изтегляне Благодаря отново (но ако някой има по-добра идея, ще се радвам да го видя)

PS: Съжалявам за моя английски

person Community    schedule 15.01.2009