people

Resim üzerine yazı yazma

Hepiniz çoğu sitede, güvenlik kodu doğrulama olayını görmüşsünüzdür. Arka planda var olan bir resmin üzerine değişik karakterler yazılarak oluşturulur.
Bizde buna benzer bir uygulama ile resim üzerine nasıl yazı yazdıracağımızı göreceğiz.

1. Öncelikle WebSite / Add New Item menüsünden yeni bir Web Form açıp ismini Guvenlik.aspx olarak kaydediyoruz.
2. Üzerine yazı yazılmak üzere kendi zevkimize göre bir resim hazırlıyoruz. Aşağıda bizim kullanacağımız örnek resim bulunmaktadır.
3. Gerekli olan namespace tanımlamalarını yapıyoruz.

(Kullanacağımız Resim)

using System.Drawing;
using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Drawing.Text;

4. Page Load eventine kodlarımızı yazıyoruz.

a) Bitmap ArkaPlanImage = new Bitmap(Server.MapPath("GuvenlikBg.jpg"));
b) Graphics GuvenlikKodu = Graphics.FromImage(ArkaPlanImage);
c) GuvenlikKodu.SmoothingMode = SmoothingMode.AntiAlias;
d) Random RastGele = new Random();
e) string Kodumuz = Convert.ToString(RastGele.Next(10000,99999));
f ) GuvenlikKodu.DrawString(Kodumuz, new Font("Monotype corsiva", 25, FontStyle.Italic), SystemBrushes.WindowText, new Point(10, 3));
g) Response.ContentType = "image/jpeg";
h) ArkaPlanImage.Save(Response.OutputStream, ImageFormat.Gif);
i) GuvenlikKodu.Dispose();
j) ArkaPlanImage.Dispose();

Kodlarımızı yazdık şimdi açıklamaya geçelim.
a) Arka planda kullanacağımız resmi seçiyoruz.
b) Seçtiğimiz resmi grafik nesnesine atıyoruz.
c) Grafiğimizin kalitesini belirliyoruz. AntiAlias olan değerimizi HighQuality, Default, HighSpeed, Invalid yapabiliriz.
d) Rastgele sayı oluşturmak için Random nesnemizi oluşturuyoruz.
e) 10000 ile 99999 arasında bir sayı üretip Kodumuz adlı değişkene aktarıyoruz. Sayıyı istediğiniz aralıkta belirtebilirsiniz.
f) Resmimizin üzerine yazılacak olan değeri, yazı tipini, boyutunu, stilini ve değerin, resmin hangi x,y koordinatlarından yazılmaya başlanacağını belirtiyoruz.
g) Sayfa çıktısını image/jpeg olarak ayarlıyoruz.
h) Resmimizi gif formatında ekrana yazıyoruz.
i) GuvenlikKodu isimli Graphics nesnemizi kapatıyoruz.
j) ArkaPlanImage isimli Bitmap nesnemizi kapatıyoruz.

5. Web Site / Add New Item Menüsünden yeni bir sayfa daha açıyoruz.
6. Html kontrollerinden Image kontrolü ekleyip kaynağına Guvenlik.aspx dosyasını belirtiyoruz. Guvenlik.aspx sayfasının çıktısı image/jpeg formatında olduğu için image kontrolümüzde resmimiz görünecektir.



Örnek çıktı aşağıdaki gibidir.

0 yorum:

Yorum Gönder