2016-11-30 1 views
-1

J'utilise une bibliothèque html2canvas.js et mPDF.html2canvas, je veux augmenter la qualité

donc le processus est myproject html capture div -> base64/.png -> MPDF (img src = "data/~~~~")

mais l'image vue MPDF faible qualité. Je veux qualité moyenne ou haute qualité.

mon utilisation source html2canvas ce

function html2img(){ 
    var canvas =""; 
    html2canvas($("#SavePart"), { 
    onrendered: function(canvas) { 
    // canvas is the final rendered <canvas> element 
    document.getElementById("theimage").src = canvas.toDataURL(); 
// console.log(canvas.toDataURL()); 
//  Canvas2Image.saveAsPNG(canvas); 

    var o_hidden = document.createElement("input"); 
    o_hidden.type = "hidden"; 
    o_hidden.name = "data"; 
    o_hidden.value = canvas.toDataURL(); 
    test.appendChild(o_hidden); 

    document.test.submit(); 
    } 
    }); 

} 

MPDF CODE

$html.='<img src="data:image/jpg;base64,'.$image_data.'" />'; 

comment up de la qualité de l'image?

+0

pas la question, mais '-> base64/.png ->' - et pourtant vous utilisez 'data: image/jpg' - surpris qu'il affiche, pour être honnête - je suppose que les navigateurs sont indulgents mimetype si elles peuvent détecter ce tu "voulais" plutôt que ce que tu "faisais" –

+0

désolé mon erreur. –

+0

Découvrez https://github.com/niklasvh/html2canvas/issues/241 – 0xcaff

Répondre

0

Vous pouvez utiliser ce

var imgURi = canvas.toDataURL("image/png",1.0);

Pour plus d'informations, vous pouvez lire this doc.

+0

merci, mais ce code (var imgURi = canvas.toDataURL ("image/png", 1.0);) changer var imgURi = canvas.toDataURL ("image/jpeg", 1.0); bon processus. –