Как сделать скриншот области экрана на js?

308
01 июня 2018, 06:10

Мне нужно сделать снимок экрана по нажатию на кнопку.

Решение типа html2canvas не подойдёт (так как он опирается на DOM на сколько я знаю). Мне нужно решение похожее на работу плагинов, таких как Lightshot Всё дело в том, что у меня на странице есть gif и если использовать обычный html2cannvas, то он отображает только первый кадр гифки, а не тот, который был сделан в момент нажатия клавиши.

Решение через jsgif мне тоже не подходит так как это занимает много времени, пока картинка прочитается покадрово

Куда мне копать что бы я смог делать снимок "поверх" страницы, опять же как подобные плагины для браузеров. Заранее спасибо)

Answer 1

Если реализовывать как плагин для браузера, то вот этот https://developer.chrome.com/extensions/tabs#method-captureVisibleTab API расширения для chrome делает скриншот всей открытой вкладки. Выбрать нужную часть может сам человек, либо можно выполнить executeScript и получить нужные координаты.

Еще есть специальные сервисы, которые делают скриншот сайта, при необходимости можно использовать их. Минусы тут простые - несколько скриншотов в сутки и платно. Насчет нужного кадра не уверен.

Успехов.

READ ALSO
Вывод кодов ОКВЭД на сайт ( многоуровнеый список)

Вывод кодов ОКВЭД на сайт ( многоуровнеый список)

Всем приветСобственно есть БД кодов ОКВЭД в 2-ух вариантах: 1) http://prntscr

276
Типизация языка С++

Типизация языка С++

С++ — это статически типизированный языкЯ не могу понять, почему так, если, например, понижающее приведение типов (dynamic cast, разумеется) в ветке...

297
Работа пользовательского класса string

Работа пользовательского класса string

Ввод строки работает правильно вне switch, если хочу вызвать функцию через switch ,то после ввода строки зависает с сообщением "Прекращена работа

295
Инъекция DLL в свой процесс C++

Инъекция DLL в свой процесс C++

Учу С++Интересен способ инъекции DLL в свой процесс

269