Я так понял сначало можно было через canvas.

Потом нашли способ использовать canvas чтобы рисовать там изображение и отправлять его нехорошим людям.
Так что теперь можно только клонировать изображение с атрибутом src http://stackoverflow.com/questions/2042 … 5#27260385 но не в base64.

Методы toBlob(), toDataURL(), or getImageData() для canvas запретили: https://developer.mozilla.org/en-US/doc … bled_image
Доступ к указанным в форме отправки изображениям есть по прежнему.
Причем интересно при установке setAttribute('crossOrigin', 'anonymous'); функция toDataURL() просто тихо без предупреждений не срабатывает, если политика CORS на сервере не соответствует расположению картинки.

Текст по прежнему переводить можно: https://developer.mozilla.org/ru/docs/W … d_decoding
И даже вроде бы SVG.

Есть идеи как получить base64 картинки на чистом скрипте?

10-10-2016 14:56:35
Что интересно в описании функции toDataURL() не указано, что она теперь не работает с кросс доменными запросами: https://developer.mozilla.org/en-US/doc … /toDataURL

10-10-2016 15:09:09
Описание ошибки:

Выделить код

Код:

SecurityError: The operation is insecure.

Может дополни пост насчёт того, работает или нет связка типа
img (src) > XMLHttpRequest (responseType = "blob") > FileReader (readAsDataURL)

В вопросе всё крутится вокруг кроссдоменных запросов. Если они создателями сайта, где находится картинка, запрещены, то считывание через XMLHttpRequest (хоть в blob, хоть куда угодно) возможно, только если страничка, содержащая этот XMLHttpRequest, находится в том же самом домене. Поэтому я почти аналогичную задачу (сохранение картинок с сайта на локальный диск) решал с помощью скрипта GreaseMonkey.

yup
Ага. Эт я хотел написать bookmarklet который все ресурсы страницы (js, css, img) включая такие как border-image: url()
конвертирует в base64 и заменяет ими оригинал. Хочу такой скрипт использовать, как альтернативу .mht формату.
Пока всё идет к тому, что придется писать дополнение на WebExtensions, там ограничение быть не должно.

Хотя способ Dumby ещё до конца не проработал.

10-10-2016 22:23:24
yup
GreaseMonkey не интересно, мне надо по нажатию: bookmarklet или дополнение.

Dorian пишет:

GreaseMonkey не интересно, мне надо по нажатию: bookmarklet или дополнение.

Думаю, вместо GreaseMonkey можно использовать CustomButtons. Это мне, в силу специфики целевого сайта, нужен был автоматический запуск скачивающего скрипта.

(Кстати, мой скрипт только запускается автоматически, а дальше он рисует кнопку, нажатие на которую и запускает собственно "процесс" :) )

Dorian

Я когда-то делал такое: https://forum.mozilla-russia.org/viewto … 88#p588588. Самая серьёзная оставшаяся проблема - с js, получаем или риск двойной работы document.write и т.п. или неработающие обработчики на сохранённой странице  (не увидим что там было под спойлером).