Silverlight ile 31 Gün yazi dizimizin 8.günündeyiz.
Bu yazimizda, Silverlight’in varsayilan fontlari arasinda bulunmayan fontlar hakkinda konusacagiz. Oldukça önemlidir. Çünkü varsayilan olarak sadece 9 adet fontumuz vardir ve bunlarin çogunlugu oldukça siradan ve sikicidirlar.
Aranizdan bazilari benim yaptigim Silverlight uygulamalarinda hata oldugunu belirtti. Plugin’inizin versiyonunuzun en güncel hali olmadigina yönelik bir hata bu. Ben de benim uygulamalarimin her yerde çalismadigini ve Beta’larin da her yerde çalisitirilamayacagini yavas yavas ögreniyorum. Ben uygulamalarimin üzerinde olabildigince iyi sekilde sorunlari çözmeye çalisip bunlari daha uyumlu hale getirirken siz de Silverlight 3 Beta Plugin’ini indirebilirsiniz.
Kendi Font Dosyamizi Bulma
Ilk olarak kullanmak istedigimiz font dosyasini bulmamiz gerekiyor.(Size yasal olarak bir hatirlatma yapmak zorundayim, fontlar da tipki mp3 ve videolar gibi lisans haklarina sahiptirler, seçtiginiz fontun dagitim izni oldugundan emin olmalisiniz.) Ben Windows 7 Release Candidate kullaniyorum, zaten çogu Windows ürününde bu fontlar ayni yerdedir.
C:\\\\\\Windows\\\\\\Fonts
Bu klasörle ilgili önemli olan sey, bu girdiginiz fonts klasörü ne kadar normal gibi görünse de aslinda çok daha karmasik bir yer. Fontlarinizi kendiniz baska bir yerde saklamak istemedikçe bu klasörde toplarsiniz. Siz de bu ttf dosyasinin bir kopyasini bilgisayariniza yedekleyin. Bunu yapmamizin sebebi su; Visual Studio açarsaniz ve "Add Existing Item..." i seçerseniz, Visual Studio bu Font klasörünü açmaya çalisacak ve bütün fontlari Silverlight projenize ekleyecek. Bu sekilde kendi istediginiz fontu seçme sansiniz malesef yok.
Projenize Kendi Fontunuzu Ekleyin
Silverlight projenize sag tiklayin ve "Add Existing Item..."i seçin. Bilgisayarinizdan kendi fontunuzu bulun ve seçin. Visual Studio’da bu dosyanin özelliklerine bakin ve dosyaniza Build Action’in Resourse olarak seçili oldugundan emin olun. Bu sekilde yaparak, uygulamanizi kullanacak kisilerin bilgisayarlarina da bu fontun dagitilmasi için gereken .xap dosyasini da dahil edersiniz.
TextBlock’a Fontunuzu Ekleyin
Silverlight sayfamizda, FontFamily özelliklerini alabilmemiz için bir element eklememiz gerek. Bu örnekte, TextBlock kullanacagiz, ama TextBoxlar, butonlar ve diger XAML elementleri birer FontFamily alacaklar. Fontun kendini eklemek, FontFamily tagina fontun adini eklemek kadar kolay degil. Ilk olarak .ttf referans dosyasina ve fontun ismine ihtiyacimiz var XAML’imiz söyle olacak.

Bunu kodlarla da degistirebilirsiniz.
Bu sekilde isler kolay. Peki ya bu islemleri kod bazinda yapmak istersek napacagiz? O da çok kolay. Hepsi 4 Buton ve bir TextBlock’tan olusan küçük bir uygulama yaptim. Her bir butona tikladiginizda, TextBlock’a yeni bir FontFamily eklenecek. Buyrun XAML’ini.

Kodlarda, iki degisik olay metodumuz var. Çünkü bu degisikligi ele almayi size farkli yollardan da göstermek istedim. Ilk metodumuzda, ChangeFont, sadece gönderdigimiz botunlari alir ve TextBlock ’a eklemek için botunun fontunu kullanir. Ikinci metodumda da, ChangeToRoughDraft, wTextBlock için açik açiga bir FontFamily tanimladik.Fakat bu yolla uygulamanizdaki açilir menuden bir font seçicinin nasil olusturuldugunu da görebilirsiniz.

Özet
Bu yazimizda, Silverlight’la gelen standart 9’da bulunmayan fontlarin Silverlight uygulamalarinda nasil kullanilacagini gösterdik. Kodlarla dinamik olarak FontFamily’lerin nasil degistirildigini de belirttik. Uygulama asagi tarafta bulunuyor, Silverlight Kisisel Font uygulamamizi görmek için color=#0000cc buraya tiklayin. Eger kodlari indirmek isterseniz de color=#0000cc buraya tiklamaniz yeterli olacaktir.
Haberci Destek Tim adina çevirisi Hanefi tarafindan yapilmistir.