Задать вопрос
RadiationX
@RadiationX
Front-End разработчик

Как избавиться от ошибки «Tainted canvases may not be exported»?

Хром вот так ругается Uncaught SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement': Tainted canvases may not be exported. на эту строчку в коде
canvasImg = canvas.toDataURL("image/png");

Использую html2canvas. Ошибка возникает если страницу открывать из какой-нибудь папки, если страницу залить на сервер, то там всё нормально работает.

Как избавиться от этой ошибки?
  • Вопрос задан
  • 18520 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@mark_slepkov
< img crossorigin="anonymous" src="some.url" / > Поможет
Ответ написан
k12th
@k12th
console.log(`You're pulling my leg, right?`);
Tainted canvas — канвас, на который выведен рисунок с другого домена. Некоторые операции (например, .toDataURL) с таким канвасом считаются нарушением same origin policy.
Для открытого локально файла любой другой домен считается нарушением same origin policy, отсюда и ошибка.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
OfferCase Москва
от 400 000 ₽
ITK academy Нижний Новгород
от 80 000 до 120 000 ₽
Future Москва
от 50 000 до 70 000 ₽