En mis dos monitores de PC, cuando dibujo una línea de (0,0) a (window.innerWidth,window.innerHeight), la línea llena la pantalla en diagonal. Sin embargo, window.innerWidth y window.innerHeight son un 20 % inferiores a la resolución de pantalla especificada por el fabricante del monitor y acordada por la información de pantalla de Windows 10. Por extraño que parezca, este no era el caso hace 6 meses cuando probé por primera vez un código similar. ¿Algunas ideas?
<!doctype html> <html > <script type="text/javascript"> window.addEventListener("load", windowLoadHandler, false); function windowLoadHandler() { init();} // Is this still necessary? function init() { tC = document.getElementById("can1"); ctx = tC.getContext("2d"); cw= tC.width = window.innerWidth; ch = tC.height = window.innerHeight; ctx.fillStyle = "yellow"; ctx.fillRect(0,0,tC.width,tC.height); ctx.fillStyle = ctx.strokeStyle= "black"; ctx.font = "20pt Arial"; ctx.fillText("Cwidth = " + cw + " ; Cheight = " +ch,200,300); ctx.moveTo(0,0); ctx.lineTo(cw,ch); ctx.stroke(); } </script> <form> <div > <canvas id="can1" width= 50px height = 50px > </canvas> </div> </form> </html>