تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] تغيير خط ليبال من داخل مجلد السورس
#7
اخي عبد الهادي وجدت الحل 

ضع الفونتات في الريسورس 

   


وسيقوم الريسورس بتحويلها الى مصفوفه بايتات

اضف مجالات الاسماء التالية 

كود :
Imports System.Drawing.Text
Imports System.Runtime.InteropServices

 
الان نخزن الفونتات من الريسورس في ليست Fonts

وكذلك نقوم بعمل ليست لجلب الفونتات FontFamilies

كود :
   Dim Fonts As New List(Of Byte())({My.Resources.YIKES___,
                                    My.Resources.Caramel_Candy,
                                    My.Resources.Anyk,
                                    My.Resources.Because_I_am_Happy_Regular})

   Dim FontFamilies As New List(Of FontFamily)


نعرف الاجراء الذي يضيف الفونتات من ليست Fonts  الى ليست FontFamilies

باستخدام PrivateFontCollection ايضا ولكنه يقوم بتخزين الفونتات الى الذاكره وجلبها باستخدام AddMemoryFont

كود :
   Sub AddFonts()
       For Each f In Fonts
           Dim pfc As New PrivateFontCollection

           Dim fontData = Marshal.AllocCoTaskMem(f.Length)
           Marshal.Copy(f, 0, fontData, f.Length)
           pfc.AddMemoryFont(fontData, f.Length)

           FontFamilies.Add(pfc.Families(0))
       Next
   End Sub


الان ما علينا فعله في حدث اللود نقوم باستدعاء الاجراء ، وكذلك اسناد الفونتات من الليست 

كود :
   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
       AddFonts()



       Label1.Font = New Font(FontFamilies(0), 26)
       Label2.Font = New Font(FontFamilies(1), 26)
       Label3.Font = New Font(FontFamilies(2), 26)
       Label4.Font = New Font(FontFamilies(3), 26)



   End Sub
   
ملاحظة هامة : لكي تعمل هذه الطريقة يجب ان تعطل application framework :

   


دائما ما احب التعامل مع المرفقات عندما تكون الملفات المطلوبة غير متغيرة لتريح رأسك من المسارات

المصدر : https://stackoverflow.com/a/36509042/14137871


الملفات المرفقة
.zip   PrivateFonts.zip (الحجم : 760.72 ك ب / التحميلات : 31)
الرد }}}
تم الشكر بواسطة: عبد العزيز البسكري , WaeLx , WaeLx , asemshahen5


الردود في هذا الموضوع
RE: تغيير خط ليبال من داخل مجلد السورس - بواسطة Anas Mahmoud - 28-08-20, 12:53 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,859 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  [سؤال] تغيير الفورم الرئيسي عند تشغيل البرنامج في Visual Studio مع .NET 8؟ silverlord 2 654 09-03-25, 03:52 AM
آخر رد: silverlord
  [كود] كود تغيير حجم النص في التكست بوكس hassan 8 8,796 30-01-25, 02:33 AM
آخر رد: خالد كامل1
  تغيير أسم ملف DOX.1 3 3,269 01-01-25, 09:37 PM
آخر رد: anes
  استدعاء من جدولين داخل اداه FlowLayoutPanel برجاء الافادة للضرورة جداً modymody300894 7 638 15-11-24, 11:02 AM
آخر رد: modymody300894
  كتابه عدد معين من الارقام داخل تيكست بوكس modymody300894 3 558 07-11-24, 09:15 PM
آخر رد: modymody300894
  تغيير مكان حفظ الصورة من قاعدة البيانات إلى مجلد في مسار البرنامج F.H.M 37 2,343 05-11-24, 08:30 AM
آخر رد: F.H.M
  ترتيب شجره الحسابات داخل الجريد فيو modymody300894 2 409 31-10-24, 12:27 PM
آخر رد: modymody300894
  تغيير اللون تلقائياً عند إقتراب نهاية العقد F.H.M 2 450 25-10-24, 07:16 AM
آخر رد: F.H.M
Exclamation [VB.NET] ممكن عمل كود لحفظ المكتوب داخل اداة TextBox الورد الصناعي 9 807 17-10-24, 11:43 PM
آخر رد: salamandal

التنقل السريع :


يقوم بقرائة الموضوع: