İçin <canvas>
elemanları, CSS kuralları width
ve height
sayfaya çekilecek Tuval öğesi gerçek boyutunu ayarlayın. Öte yandan, tuval API'sinin kullanacağı koordinat sisteminin veya 'ızgaranın' HTML özellikleri width
ve height
boyutunu ayarlar.
Örneğin, şunu düşünün ( jsfiddle ):
var ctx = document.getElementById('canvas1').getContext('2d');
ctx.fillStyle = "red";
ctx.fillRect(10, 10, 30, 30);
var ctx2 = document.getElementById('canvas2').getContext('2d');
ctx2.fillStyle = "red";
ctx2.fillRect(10, 10, 30, 30);
canvas {
border: 1px solid black;
}
<canvas id="canvas1" style="width: 50px; height: 100px;" height="50" width="100"></canvas>
<canvas id="canvas2" style="width: 100px; height: 100px;" height="50" width="100"></canvas>
Her ikisi de tuval öğesinin iç koordinatlarına göre üzerlerine çizildi. Ancak ikinci tuvalde, kırmızı dikdörtgen iki kat daha geniş olacaktır, çünkü bir bütün olarak tuval CSS kurallarına göre daha büyük bir alana uzanmaktadır.
Not: CSS için kurallar width
ve / veya height
belirtilmezse, tarayıcı, öğeyi boyutlandırmak için HTML niteliklerini kullanır, böylece bu değerlerin 1 birimi sayfada 1 piksele eşit olur. Bu nitelikler belirtilmemişse sonra da bir varsayılan olacaktır width
arasında 300
bir height
bir 150
.