savostin
@savostin
Еще один программист

Можно ли получить img со стороннего сервера, дорисовать что-то и отдать клиенту на сохранение?

Есть некая страница, на ней img с src на сторонний сайт.
Нужно внести изменение в рисунок (добавить надпись) и сделать "Сохранить файл как".
Без участия моего сервера, т.е. чисто на клиенте.
Добавить Access-Control-Allow-Origin: * в заголовок картинки нельзя.
Для "сохранить как" использую FileSaver.js, но "в лоб" он выдает ошибку "Tainted canvases may not be exported". Может есть какой-то обходной путь? Может как-то img получать по-другому, скажем через "new Image()"? Да хоть попиксельно скопировать...
Код такой:
var canvas = document.createElement('canvas');
canvas.width = img.width;
canvas.height = img.height;
var ctx = canvas.getContext("2d");
ctx.drawImage(img, 0, 0);
ctx.fillText("Hello World!",10,50);
canvas.toBlob(function(blob) {
saveAs(blob, 'saved.png');
});
  • Вопрос задан
  • 2353 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы