2013-08-05 2 views
2

svgpng으로 변환 중입니다. 이 전환의 경우 canvg을 사용하고 있습니다. 이 변환은 Google 크롬에서 제대로 작동하지만 IE 10은 다음과 같은 오류 메시지를 표시합니다. canvg가 IE 10에서 작동하지 않습니다.

Unhandled exception at line 137, column 5 in http://localhost:21683/Js/canvg.js 

0x800a139e - JavaScript runtime error: SyntaxError 

나는 다음과 같은 코드

가 IE 10에서 실행되도록 만드는 방법

http://jsfiddle.net/dGzau/

http://jsfiddle.net/fnyJV/

를 시도?

아무도 도와 주실 수 없습니까?

+0

질문하는 동안 IE 버전을 언급해야합니다. –

+0

귀하의 fiddles가 jQuery 및 기타 거물로 계속 진행되고있는 것 같습니다. http://stackoverflow.com/questions/18085854/print-large-raphael-js-chart-accross-multiple-pages의 답변은 http://jsfiddle.net/mdYnz/8/을 사용합니다. canvg는 다른 라이브러리가 없으며'innerHTML'에 의존하고 jQuery의'.html()'에 의존하지 않습니다. 시도해보고 작동하는지 확인하십시오. 그렇다면 코드가 제대로 작동하지 않는 이유를 알아 봅니다. –

답변

4

이 개선 (http://code.google.com/p/canvg/issues/detail?id=189)을 발견했으며 IE10에서 잘 작동합니다. 하지만 Internet Explorer 10 이하의 솔루션을 찾고 있습니다.

'svg.parseXml'함수의 시작 부분에 다음 코드를 추가하면 코드가 작동합니다.

// -- Internet Explorer trick, otherwise an error is generated in the 'parseFromString' function when 
// -- You use <svg xmlns="http://www.w3.org/2000/svg"></svg> declarations, this is the case for Raphael 
xml = xml.replace(/xmlns=\"http:\/\/www\.w3\.org\/2000\/svg\"/, ''); 
관련 문제