Pertanyaan "DOM Exception 18" dari kanvas


Saya mengambil gambar SVG, menggambarnya ke kanvas, dan mencoba mengekspornya melalui toDataURL, tetapi Chrome melemparkan saya bahwa kesalahan keamanan DOM Exception 18. Saya tahu masalahnya adalah karena saya menggambar gambar SVG ke kanvas dengan skema URI data (data: gambar / svg + xml; base64), jadi saya kira peramban melihatnya sebagai lintas-domain (yaitu masalah keamanan), tapi saya tidak bisa memikirkan cara lain untuk mendapatkan barang SVG saya di kanvas. Saya tidak dapat menghostingnya karena konten SVG bersifat dinamis dan dimanipulasi terlebih dahulu sebelum diekspor melalui toDataURL.

Saya membaca beberapa pertanyaan serupa lainnya yang ditanyakan di sini tetapi tidak menemukan solusi untuk masalah saya.


5
2017-12-11 22:24


asal


Jawaban:


Di gambar Chrome apa saja SVG ke a canvas mencemari itu karena SVG mungkin mengandung foreignObject, ini bugnya. Chrome juga bermasalah skema URI data dan canvas, jadi Anda berlari ke whammy ganda.


3
2017-12-11 22:31



Saya memiliki masalah yang sama. Sebagai solusi saya menggunakan SVG ke HTML5 Canvas Converter untuk memindahkan svg ke panggilan kanvas.


0
2018-05-09 17:53