2016-03-29 20 views
1

divをPDFにエクスポートするためにhtml2canvasとjsPDFを使用していますが、Google Chrome、Firefox、IE 11で動作していますが、IEのバージョン9と10ではエラーが発生しています:ArrayBufferは未定義です。エラー:ArrayBufferが定義されていません

CODE: http://caniuse.com/#feat=typedarrays

は、それはあなたが表示されますArrayBufferは、Internet Explorer 9でサポートされており、Internet Explorerのみ10この手段に警告してサポートされていないこと:

function exportPDF(relatorio){ 

var form = $(relatorio); 

var cache_width = form.width(); 

var a4 =[ 595.28, 841.89]; 

getCanvas(form).then(function(canvas){ 

    var imgData = canvas.toDataURL('image/png'); 

    var imgWidth = 210; 

    var pageHeight = 295; 

    var imgHeight = canvas.height * imgWidth/canvas.width; 

    var heightLeft = imgHeight; 

    var doc = new jsPDF('p', 'mm'); 

    var position = 0; 

    doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight); 

    heightLeft -= pageHeight; 

    while (heightLeft >= 0) { 

     position = heightLeft - imgHeight; 

     doc.addPage(); 

     doc.addImage(imgData, 'PNG', 0, position, imgWidth, imgHeight); 

     heightLeft -= pageHeight; 

    } 

    doc.save('relatorioOrcadoRealizado.pdf'); 
    form.width(cache_width); 

}); 
} 

function getCanvas(form){ 
//CONVERT for canvas 
return html2canvas(form,{ 
    imageTimeout:2000, 
    removeContainer:true 
    }); 
} 

答えて

0

は、このリンクを見てくださいコードを変更して別のものを使用する必要があります(このpolyfillはここでは例:https://github.com/inexorabletash/polyfill/blob/master/typedarray.js)。IE 9や10で動作しないコードで暮らす必要があります。

+0

ありがとうございます@ David va n Driessche、私の "英語"翻訳者のグーグルに申し訳ありませんが、私はこの "typedarray.js"をどのように使用できるのか分かりませんでした。私はこのJavaScriptをプロジェクトに追加しなければなりませんか? –

関連する問題