2016-03-23 12 views
1

Tablolara ve grafiklere sahip bir divum var ve PDF'ye aktarım gerekiyor, bir tuval oluşturmak için html2canvas.js'yi kullandım ve pdf belgesine tuval eklemek için jsPDF.js'yi kullandım ve işe yaradı! ama sadece Mozilla Fire Fox ve Google Chrome'da, Internet Explorer 9, 10 ve 11 çalışmadı! Bunu IE'de yapmanın mümkün olup olmadığını veya uyumsuzluk problemi olduğunu bilen var mı?Export DIV to PDF'yi Internet Explorer'da çalışma

KODU:

fonksiyon CreatePDF (relatorio) {

// Rapor chice var form = $ (relatorio) olsun;

var cache_width = form.width(); 

//A4 SIZE 
var a4 =[ 595.28, 841.89]; 

//CALL THE GET CANVAS FUNCTION 
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); 

} TUVALE

işlev getCanvas (biçimi) İÇİN

// DÖNÜùTÜR DIV {

dönüş html2canvas (form, {

imageTimeout:2000, 

removeContainer:true 

}); 

}

+0

Web geliştirme dünyasına hoş geldiniz. IE genellikle tüm sorunlarınıza neden olur ve etrafta çalışmak çok zor olur. Göreviniz IE 10 ve 11'de çalışmalı, ancak IE 9'da asla çalışmayacaktır. Görüşünüzü uyumluluk modunda olup olmadığını kontrol etmelisiniz, eğer bunu kapatırsanız ve görevinizi 10 ve 11 – QBM5

+0

yanıtınız için teşekkürler! IE 10 ve 11’e çalışıyorum ve çalışıyorum, aynı işi IE 9’da yapabileceğimi biliyor musunuz? –

+0

Kitaplığınız IE 9'u resmi olarak destekliyor mu, mümkün olup olmadığını belirlemek için en iyi kaynağınız olacaklar – QBM5

cevap

0

aynı yıl aradan sonra, bu problem için bir çözüm buldum, IE9'daki bir arrayBuffer öznesini sağlamak için polyfill kullanmam gerekiyor.