2016-09-09 2 views
0

Retina Display: Lorsque l'utilisateur ouvre grand kit sur la toile et voir dans le petit écran, il ne rentre pas dans l'écran.dans l'affichage Retina, dans la toile pas de fichier svg correctement défini dans le papier js

J'ai testé dans un écran Mac-book 12-13 pouces rétine. je l'ai déjà fait une opération comme

canvas.width = width * ratio; 
canvas.height = height * ratio; 
$(canvas).css("width", width+"px").css("height", height+"px"); 
context.scale(ratio,ratio); 
context.save(); 
+0

Pour changer la taille de la toile dans paperjs, il serait préférable d'utiliser 'view.viewSize'. Pour la mise à l'échelle dans paperjs, il serait préférable d'utiliser 'view.zoom'. La référence est http://paperjs.org/reference/view/ – sapics

Répondre

0

J'utilise le zoom pour résoudre ce problème

function getInitialZoomRatio(svgWidth, svgHeight) { 
    if (svgWidth > paper.project.view.element.width || svgHeight > paper.project.view.element.height) { 
     var wRatio = (paper.project.view.element.width/svgWidth); 
     var Hratio = (paper.project.view.element.height/svgHeight); 
     return Math.min(Hratio, wRatio); 
    } else { 
     return 1; 
    } 
} 

paper.view.zoom = initialZoomRatio/window.devicePixelRatio