HTML DOM Kanva nesnesi

<canvas> elementi, HTML sayfasındaki bit map alanını tanımlar.

Canvas API, JavaScript'in çizim yapabileceği bir çizim alanı sunar.

Canvas API, şekiller, çizgiler, eğriler, kutular, metin ve görseller, ayrıca renk, döndürme, şeffaflık ve diğer pixel işlemleri çizmek için izin verir.

Canvas'ı HTML'ye ekleyin

HTML sayfasındaki herhangi bir yerde canvas elementi eklemek için <canvas> etiketini kullanabilirsiniz:

Örnek

<canvas id="myCanvas" width="300" height="150"></canvas>

Kişisel olarak deneyin

Canvas elementine nasıl erişilir

HTML DOM yöntemi ile getElementById() kullanarak <canvas> elementine erişebilirsiniz:

const myCanvas = document.getElementById("myCanvas");

Panoda çizim yapmak için 2D kontekst nesnesi oluşturmanız gerekmektedir:

const ctx = myCanvas.getContext("2d");

Notlar

HTML <canvas> elementi kendisi görsel çizim işlevine sahiptir.

Herhangi bir grafik çizmek için JavaScript kullanmanız gerekmektedir.

getContext() yöntemi, çizim araçları (yöntemleri) içeren bir nesne döndürür.

Panoda çizim yapmak

2D kontekst nesnesi oluşturduktan sonra, panoda çizim yapabilirsiniz.

Aşağıdaki fillRect() yöntemi, sol üst köşesi 20,20 konumunda olan, genişliği 150 piksel, yüksekliği 100 piksel olan siyah bir dikdörtgen çizer:

Örnek

const myCanvas = document.getElementById("myCanvas");
const ctx = myCanvas.getContext("2d");
ctx.fillRect(20, 20, 150, 100);

Kişisel olarak deneyin

Renk kullanarak

fillStyle özelliği, çizim nesnesinin doldurma rengini ayarlar:

Örnek

const myCanvas = document.getElementById("myCanvas");
const ctx = myCanvas.getContext("2d");
ctx.fillStyle = "red";
ctx.fillRect(20, 20, 150, 100);

Kişisel olarak deneyin

Yeni bir <canvas> elementi oluşturmak için document.createElement() yöntemini kullanabilir ve bu elementi mevcut HTML sayfasına ekleyebilirsiniz:

Örnek

const myCanvas = document.createElement("canvas");
document.body.appendChild(myCanvas);
const ctx = myCanvas.getContext("2d");
ctx.fillStyle = "red";
ctx.fillRect(20, 20, 150, 100);

Kişisel olarak deneyin

Yol

Görselleri çizmek için kullanılan yaygın yöntemler:

  1. Yol başlatmak - beginPath()
  2. Bir noktaya gitmek - moveTo()
  3. Yol içinde çizim - lineTo()
  4. Yol çizgisi - stroke()

Örnek

const canvas = document.getElementById("myCanvas");
const ctx = canvas.getContext("2d");
ctx.beginPath();
ctx.moveTo(20, 20);
ctx.lineTo(20, 100);
ctx.lineTo(70, 100);
ctx.stroke();

Kişisel olarak deneyin

Renk, stil ve gölge

Özellikler Açıklama
fillStyle Doldurma için kullanılan rengi, eğrisel geçiş veya doku ayarlamak veya döndürmek.
strokeStyle Çizgilerin rengi, eğrisel geçiş veya doku ayarlamak veya döndürmek.
shadowColor Gölge için kullanılan rengi ayarlamak veya döndürmek.
shadowBlur Gölge bulanıklık seviyesini ayarlamak veya döndürmek.
shadowOffsetX Gölgeyi şekile olan yatay mesafeyi ayarlar veya döndürür.
shadowOffsetY Gölgeyi şekile olan dikey mesafeyi ayarlar veya döndürür.
Yöntem Açıklama
createLinearGradient() Doğrusal gradyan oluşturur (canvasta içerik için).
createPattern() Belirtilen yönde belirtilen elementi tekrarlar.
createRadialGradient() Dairesel/merkezli gradyan oluşturur (canvasta içerik için).
addColorStop() Renk ve durak pozisyonlarını gradyan nesnesinde belirtir.

Çizgi stili

Özellikler Açıklama
lineCap Çizginin son kapağını ayarlar veya döndürür.
lineJoin İki çizgi çarpıştığında oluşturulan köşenin türünü ayarlar veya döndürür.
lineWidth Mevcut çizgi genişliğini ayarlar veya döndürür.
miterLimit Maksimum mukavva uzunluğunu ayarlar veya döndürür.

Mıknatıs

Yöntem Açıklama
rect() Bir矩形成urur.
fillRect() Dolu bir矩形成urur.
strokeRect() Dolu olmayan bir矩形成urur.
clearRect() Belirtilen矩形的指定像素i temizler.

Yol

Yöntem Açıklama
fill() Mevcut grafik (yol) dolu döndürür.
stroke() Tanımladığınız yolu gerçekten çizer.
beginPath() Yolu başlatır veya mevcut yolu sıfırlar.
moveTo() Yolu canvasta belirtilen noktaya taşır, ancak bir çizgi oluşturmaz.
closePath() Mevcut noktadan başlangıç noktasına dönen bir yol oluşturur.
lineTo() Yeni bir nokta ekler ve bu noktadan canvasta son belirtilen noktaya doğru bir çizgi oluşturur.
clip() Orjinal canvasta herhangi bir şekil ve boyutta bir alanı keser.
quadraticCurveTo() İki kez Bezier eğrisi oluşturur.
bezierCurveTo() Üç kez Bezier eğrisi oluşturur.
arc() Bir yuvarlak/düğüm çizer (yuvarlak veya yuvarlakın bir kısmını oluşturmak için kullanılır).
arcTo() İki kesit arasına bir yuvarlak/düğüm çizer.
isPointInPath() Belirtilen nokta mevcut yolda ise true döndürür, aksi takdirde false döndürür.

Dönüşüm

Yöntem Açıklama
scale() Mevcut grafikyi büyütür veya küçültür.
rotate() Mevcut grafikyi döndürür.
translate() Canvasta (0,0) konumunu yeniden haritalar.
transform() Çizimin mevcut dönüşüm matrisini değiştirir.
setTransform() Mevcut dönüşümü birim matrise geri ayarlar. Sonra çalıştır transform().

Metin

Özellikler Açıklama
font Metin içeriğinin mevcut yazı özelliklerini ayarlar veya döndürür.
textAlign Metin içeriğinin mevcut hiza yöntemini ayarlar veya döndürür.
textBaseline Metni çizerken kullanılan mevcut metin temel çizgisini ayarlar veya döndürür.
Yöntem Açıklama
fillText() “Doldurma” metni çizer.
strokeText() Metni çizer (doldurma olmaksızın).
measureText() Belirtilen metin genişliğini içeren bir nesne döndürür.

Görsel çizimi

Yöntem Açıklama
drawImage() Görseli, çizim kağıdını veya videoyu çizer.

Piksel işlemleri

Özellikler Açıklama
width ImageData nesnesinin genişliğini döndürür.
height ImageData nesnesinin yüksekliğini döndürür.
data Belirtilen ImageData nesnesinin görsel verilerini içeren bir nesne döndürür.
Yöntem Açıklama
createImageData() Yeni boş ImageData nesnesi oluşturur.
getImageData() Belirtilen çizim kağıdının belirli bir dikdörtgenin piksel verilerini kopyalayan ImageData nesnesi döndürür.
putImageData() Görsel verilerini (belirtilen ImageData nesnesinden gelen) çizim kağıdına geri koyar.

Sentez

Özellikler Açıklama
globalAlpha Çizimin mevcut alpha veya şeffaflık değerini ayarlar veya döndürür.
globalCompositeOperation Yeni resmi mevcut resme nasıl çizileceğini ayarlar veya döndürür.

Diğer

Yöntem Açıklama
save() Mevcut kontekst durumunu kaydeder.
restore() Önceki korunan yol durumunu ve özelliklerini döndürür.
createEvent()
getContext()
toDataURL()

Standart özellikler ve olaylar

canvas nesnesi standartları desteklerÖzelliklerveOlaylar.

İlgili sayfalar

HTML Eğitimi:HTML5 Çizim Kağıdı

HTML Görsel Eğitimi:HTML Canvas Eğitimi

HTML Referans Kılavuzu:HTML <canvas> etiketi