Чтобы ответить на этот вопрос, я подумал, что буду:
- Преобразование 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 "должен быть таким же, как этот документ. Все данные в этом тесте взяты из того же документа.