- Katılım
- 3 Ocak 2014
- Mesajlar
- 433
- Tepkime puanı
- 2
- Puanları
- 0
Bu dersimizde C# ile bir resmi piksellerine ayıracağız.
Başlayalım:
Öncelikli olarak bir, bitmap oluşturmalıyız;
Kod:
var goruntuGenislik = orjinalGoruntu.Width;var goruntuYukseklik = orjinalGoruntu.Height; var piksellestirilmisGoruntu = new Bitmap(goruntuGenislik, goruntuYukseklik);
Ardından pikselleştirme için önceden karar verdiğimiz boyutlar çerçevesinde orjinal görüntü pikselleri içerisinde dolaşmaya başlayalım;
Kod:
for (var i = 0; i < goruntuGenislik; i += pikselBoyutu) { for (var j = 0; j < goruntuYukseklik; j += pikselBoyutu) { //... }}
Alan içerisinde merkezdeki piksel'i alalım. Bu piksel daha sonra sonuç görüntümüzde bu alana denk gelen pikseller için kullanacağımız rengi belirlememize yardımcı olacak.
Kod:
xOfseti = yOfseti = pikselBoyutu / 2; if (i + xOfseti >= goruntuGenislik) { xOfseti = goruntuGenislik - i - 1;} if (j + yOfseti >= goruntuYukseklik) { yOfseti = goruntuYukseklik - j - 1;} var piksel = orjinalGoruntu.GetPixel(i + xOfseti, j + yOfseti);
Son Olarak;
Kod:
for (var x = i; x < i + pikselBoyutu && x < goruntuGenislik; x++) { for (var y = j; y < j + pikselBoyutu && y < goruntuYukseklik; y++) { piksellestirilmisGoruntu.SetPixel(x, y, piksel); }}
Resmi Picture Box'a Aktarmak İçin;
Kod:
pictureBox1.Image = piksellestirilmisGoruntu;
Kolay gelsin.
Başlayalım:
Öncelikli olarak bir, bitmap oluşturmalıyız;
Kod:
var goruntuGenislik = orjinalGoruntu.Width;var goruntuYukseklik = orjinalGoruntu.Height; var piksellestirilmisGoruntu = new Bitmap(goruntuGenislik, goruntuYukseklik);
Ardından pikselleştirme için önceden karar verdiğimiz boyutlar çerçevesinde orjinal görüntü pikselleri içerisinde dolaşmaya başlayalım;
Kod:
for (var i = 0; i < goruntuGenislik; i += pikselBoyutu) { for (var j = 0; j < goruntuYukseklik; j += pikselBoyutu) { //... }}
Alan içerisinde merkezdeki piksel'i alalım. Bu piksel daha sonra sonuç görüntümüzde bu alana denk gelen pikseller için kullanacağımız rengi belirlememize yardımcı olacak.
Kod:
xOfseti = yOfseti = pikselBoyutu / 2; if (i + xOfseti >= goruntuGenislik) { xOfseti = goruntuGenislik - i - 1;} if (j + yOfseti >= goruntuYukseklik) { yOfseti = goruntuYukseklik - j - 1;} var piksel = orjinalGoruntu.GetPixel(i + xOfseti, j + yOfseti);
Son Olarak;
Kod:
for (var x = i; x < i + pikselBoyutu && x < goruntuGenislik; x++) { for (var y = j; y < j + pikselBoyutu && y < goruntuYukseklik; y++) { piksellestirilmisGoruntu.SetPixel(x, y, piksel); }}
Resmi Picture Box'a Aktarmak İçin;
Kod:
pictureBox1.Image = piksellestirilmisGoruntu;
Kolay gelsin.