Чтобы ответить на этот вопрос, я подумал, что буду:
- Преобразование SVG файла в документе в URL-адрес данных
- Загрузите его в
<img> - Нарисуйте
<img>на<canvas> - Преобразуйте этот
<canvas>в URL-адрес данных PNG - Загрузите этот URL-адрес данных в изображение.
У меня есть пример этой попытки:
http://phrogz.net/SVG/svg_to_png.xhtml
В Firefox я получаю (NS_ERROR_NOT_AVAILABLE) [nsIDOMCanvasRenderingContext2D.drawImage] при попытке нарисовать изображение на холсте на шаге 3.
Почему я получаю эту ошибку в Firefox или как ее обойти?
В Chrome я получаю исключение SECURITY_ERR, когда пытаюсь вызвать toDataURL() на шаге 4.
Почему я должен получить эту ошибку в Chrome или как ее обойти?
Спецификации WhatWG указывают, что источник изображения, сгенерированный из данных: URL-адрес, найденный в другом документе или в script "должен быть таким же, как этот документ. Все данные в этом тесте взяты из того же документа.