HTML5 Canvas Ders-24 save() ve restore() Kullanımı
UstaDerslik Soru-Cevap Yararlı Araçlar
arama ikon

bilgi UstaDerslik
Bu uyari kutusudur.
Tamam
Anasayfa
İletişim
Üyeler

HTML5 Canvas Ders-24 save() ve restore() Kullanımı

profil
cArleone
BEĞEN(0)
BEĞENME(0)
GÖRÜNTÜLENME(5539)
RAPOR ET
Html5 eğitimimize devam ediyoruz.Bu derste save() ve restore() methodlarını işleyeceğiz.Save ve restore kayıt et yükle işlemini yapıyor.Kayıt ettikleri şey ise canvasın o anki durumu.Şöyleki canvastaki komutların çoğu alt objeleri de etkiler bu etkilemeyi durdurmak için kullanılıyor genelde.

Sayfada birde çok save kullanılabilir.Örneğin ilk yazdığımız save farklı kayıt olur 2 yazdığımız save farklı.Restore ile çağırırken de sırayla bu saveleri alır.Yani ilk restore yazdığımız ilk saveyi alır.

İndir : http://ustaderslik.com/dosya/HTML5%20Canvas%20Ders-24%20save()%20ve%20restore()%20Kullanımı.zip

Kullanımı ise şu şekildedir :

cizim.save()

//işlemler

cizim.restore();

Bu şekilde işlemlerde yazılan komutlar restoredekinin altındakileri etkilemez.

Genel örnek :
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title>UstaDerslik</title>
<script type="text/javascript" src="jquery-1.11.1.min.js"></script>
<script type="text/javascript">
$(function(){

//canvas-1
var canvas = document.getElementById('canvas'),
cizim= canvas.getContext('2d');

cizim.beginPath();
cizim.rect(0,0,canvas.width,canvas.height);
cizim.fillStyle = '#dddddd';
cizim.fill();

cizim.rotate(5*Math.PI/180);

cizim.beginPath();
cizim.rect(0,0,canvas.width,canvas.height);
cizim.fillStyle = '#666666';
cizim.fill();

//canvas-2
var canvas = document.getElementById('canvas2'),
cizim= canvas.getContext('2d');

cizim.save();
cizim.beginPath();
cizim.rect(0,0,canvas.width,canvas.height);
cizim.fillStyle = '#dddddd';
cizim.fill();

cizim.rotate(5*Math.PI/180);

cizim.restore();
cizim.beginPath();
cizim.rect(0,0,canvas.width,canvas.height);
cizim.fillStyle = '#666666';
cizim.fill();
})
</script>
<style type="text/css">
canvas{border:1px solid #ddd;margin-left:100px;margin-top:50px;}
</style>
</head>
<body>

<canvas id="canvas" width="600" height="400"></canvas>
<canvas id="canvas2" width="600" height="400"></canvas>

</body>
</html>

Görüntüsü :
http://ustaderslik.com/resim/ders/51ds1ds2d.png
Yukarıda 2 canvas mevcut.İlkinde save ve restore kullanmadık o yüzden rotate komutu altakini etkiledi ama 2 canvasta save ve restore kullandığımız için etkilemedi.



Kod
Kalın
Vurgu
Resim
Video
Url
CEVAPLA
Tüm Hakları Saklıdır. ©Arleone 2013-2014 UstaDerslik






Giriş
Şifremi Unuttum...
Şifre Talep
  Kuralları Kabul Ediyorum.
Kaydol