C# Directory Vererek Font Kullanma
-
Merhaba arkadaşlar.
Yapmak istediğim şey teknik olarak mümkün mü bilmediğim için konu açtım.
Proje içerisinde assets klasörüne fontları atıp, fontarı sisteme yüklemeden dizin vermek suretiyle kullanmak istiyorum.
Normalde font sisteme yüklendiğinde aşağıdaki yapıyı kullanıyoruz.
new Font(new FontFamily( "FontName"), Size vs);
Bu dediğim haliyle kullanabilir miyim?
-
using System; using System.Drawing; using System.Drawing.Text; using System.Runtime.InteropServices; using System.Windows.Forms; public class MainForm : Form { private PrivateFontCollection privateFontCollection = new PrivateFontCollection(); private Font customFont; public MainForm() { LoadCustomFont("Arial.ttf"); // Örnek Arial customFont = new Font(privateFontCollection.Families[0], 16f); Label label = new Label(); label.Text = "Özel Font Kullanımı"; label.Font = customFont; label.Dock = DockStyle.Fill; label.TextAlign = ContentAlignment.MiddleCenter; Controls.Add(label); } private void LoadCustomFont(string fontFileName) { IntPtr data = IntPtr.Zero; try { byte[] fontData = Properties.Resources.ResourceManager.GetObject(fontFileName) as byte[]; data = Marshal.AllocCoTaskMem(fontData.Length); Marshal.Copy(fontData, 0, data, fontData.Length); privateFontCollection.AddMemoryFont(data, fontData.Length); } finally { if (data != IntPtr.Zero) { Marshal.FreeCoTaskMem(data); } } } [STAThread] static void Main() { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(new MainForm()); } }
eger fontu sisteme yükletmezsen sorun cok yasarsin!!!! privateFontCollection ile bunu cozersin su yapmak istediklerini bi kerede yaz be hocam :) ne yapmaya calisin sen :P
-
aldigin egitim videolarimi artik videolara yada kitaplara gore birseylermi yapmaya calisiyorsun anlamadim ama cok eski 7-8 sene onceki seylerden konu aciyorsun :))
-
cybermole bunu yazdı
aldigin egitim videolarimi artik videolara yada kitaplara gore birseylermi yapmaya calisiyorsun anlamadim ama cok eski 7-8 sene onceki seylerden konu aciyorsun :))
hiç alakası yok :)
saçma bir proje geldi önüme.
yüzlerce font kullanılacak.
projenin kullanılacağı pc lerin tamamına oturup font yüklemektense asset olarak barındırıp kullanmayı düşündüm.
fontlar 7-8 yıl önce mi kullanılıyordu? şuan tedavülden mi kalktı anlamadım?
Kaldı ki bu dediğim meseleyi Devexpress componentine yeni ilave etmiş. önceki sürümlerinde yok.. :))
cevap için tşkr. ;)