excanvas G_vmlCanvasManager не определен

Я пытаюсь получить сгенерированное изображение из диаграммы Google со своей страницы и нарисовать его на холсте, чтобы я мог использовать функцию canvg lib и преобразовать ее в изображение jpeg, после чего его можно прикрепить к PDF-файлу. Моя проблема в том, что некоторые версии IE не могут обрабатывать атрибут canvas. Чтобы преодолеть это, я пытаюсь использовать excanvas lib. В приведенном ниже коде я захватил изображение из контейнера.

  function getImageFromResource(containerId){

             var browserTypeAndVersion = getBrowserTypeAndVersion();

             var container = document.getElementById(containerId);

             var chartArea;

             var isIE = false;
             if(browserTypeAndVersion[0] == "MSIE" && 8 >= parseInt(browserTypeAndVersion[1])){
                isIE = true;                     
             }
             if(isIE){
                 chartArea = container.getElementsByTagName('iframe')[0].parentNode;
             }else{
                 chartArea = container.getElementsByTagName('svg')[0].parentNode;
             }
             var svg = chartArea.innerHTML;

             var canvas = document.createElement('canvas');
             canvas.setAttribute('width', chartArea.offsetWidth);
             canvas.setAttribute('height', chartArea.offsetHeight);
             canvas.setAttribute(
               'style',
               'position: absolute; ' +
               'top: ' + (-chartArea.offsetHeight * 2) + 'px;' +
               'left: ' + (-chartArea.offsetWidth * 2) + 'px;');

             if(isIE){
                 window.G_vmlCanvasManager.initElement(canvas);
             }

             document.body.appendChild(canvas);

             canvg(canvas, svg);
             var imgData = canvas.toDataURL("image/jpeg");

             return imgData;
        } 

Проблема возникает, когда я пытаюсь инициировать холст, используя initElement из G_vmlCanvasManager, он остается неопределенным, то есть он не загружается или что-то в этом роде. Поэтому мне нужно знать, как его загрузить, и для дополнительной информации мой сжатый файл js объявлен в начале базовой страницы. Спасибо за вашу помощь и внимание, ребята.

0 ответов

Другие вопросы по тегам