JavaScript-код для создания снимка экрана сайта без использования ActiveX - PullRequest
20 голосов
/ 12 января 2010

У меня есть приложение JavaScript, с которым взаимодействует пользователь. Мне нужно сохранить внешний вид интерфейса в текущий момент, обрезать нужную мне часть (или снять только ту часть, которая мне нужна, указав div) и отправить ее обратно на сервер.

Очевидно, что никакие внешние сервисы не смогут сделать это, мне нужен скрипт JavaScript (или Flash ), который может сохранить вид экрана. Возможно ли это?

Кроме того, как сказано в комментарии ниже, я не могу использовать ActiveX.

Ответы [ 4 ]

8 голосов
/ 17 ноября 2011

Google делает это в Google+, а талантливый разработчик разработал и произвел http://html2canvas.hertzen.com/. Для работы в IE вам понадобится библиотека поддержки Canvas, такая как http://excanvas.sourceforge.net/

0 голосов
/ 12 января 2010

Это невозможно в чистом JavaScript, без использования ActiveX.

0 голосов
/ 12 января 2010

Невозможно использовать JavaScript (и Flash). Это зависит от ваших ограничений, и есть некоторые обходные пути.

  1. Вы можете воспользоваться расширениями браузера (например, надстройкой Firefox), но я думаю, что они не соответствуют вашим требованиям.
  2. Лучший вариант, который я могу придумать, - это создать дерево DOM на стороне клиента, а затем отправить его на удаленный сервер.

На стороне сервера ничто не мешает вам вообще что-либо делать. Используя WebKit или даже запуская Internet Explorer или Firefox, вы можете создать снимок на стороне сервера. Это далеко не элегантно, но возможно.

0 голосов
/ 12 января 2010

Я думаю, что с помощью JavaScript вы не сможете из-за ограничений безопасности. Вспышка, возможно.

...