تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
ضغط حجم النص
#6
ما قلت لك سابقا في كلتا الحالات ما تريده يتحقق فقط في حالة واحدة و هي أن تحسب حجم التكست باستخدام TextRenderer و تبين كونترول تم توريثه من التكست بوكس بيتناسب مع ما تريده

ثم تقوم بعمل Zooming للفونت بمعني انك تحسب مقاس التكست ثم تقسمه أو تضربه في Scale ما لتجعله اصغر قليلا أو تجعله أكبر قليلا و من ثم تقارنه ب عرض التكست بوكس فإن كان اقل أو أكبر تضبطه برمحيا ليتناسب مع أبعاد التكست بوكس و في تلك الحالة أنت لن تحتاج الي تغيير ابعاد التكست بوكس
لكن هناك مشكلة وحيدة هنا وهي أن Font Size في التكست بوكس تقريبا Read Only

عموما مرحليا فيه خاصية اسمها AutoSize لو جعلت قيمتها تساوي True ستحقق لك ما تريده لكنها غالبا ستغير في ابعاد التكست بوكس.

أيضا يمكنك دراسة الكود التالي و التعديل عليه ربما يتناسب مع ما تريد انا كتبته لكي يعطيك فكرة بسيطة عن كيفية التلاعب بحجم الفونت لكنك

Public Class Form1

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Me.TextBox1.Text = "The Lazy Fox Jumps on the Streets"
End Sub

Public Shared Function ScaleTextBoxFontSize(textBoxSize As Size, textBoxFont As Font, textBoxString As String) As Single
Dim textSize As SizeF = TextRenderer.MeasureText(TextBoxString, textBoxFont)
Return textBoxFont.Size * Math.Min(textBoxSize.Height / textSize.Height, textBoxSize.Width / textSize.Width)
End Function


Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
If Not String.IsNullOrEmpty(TextBox1.Text) Then
Dim originalFontSize As Single = Me.TextBox1.Font.Size
Dim scale As Single = ScaleTextBoxFontSize(Me.TextBox1.Size, Me.TextBox1.Font, Me.TextBox1.Text)
Me.TextBox1.Font = New Font(Me.TextBox1.Font.FontFamily, originalFontSize * scale / 10)

End If
End Sub

End Class
الرد }}}
تم الشكر بواسطة: abuzzouz


الردود في هذا الموضوع
ضغط حجم النص - بواسطة abuzzouz - 11-08-14, 12:52 PM
RE: ضغط حجم النص - بواسطة sooriaty03 - 11-08-14, 03:35 PM
RE: ضغط حجم النص - بواسطة abuzzouz - 11-08-14, 04:04 PM
RE: ضغط حجم النص - بواسطة silverlight - 12-08-14, 04:19 AM
RE: ضغط حجم النص - بواسطة abuzzouz - 12-08-14, 07:46 AM
RE: ضغط حجم النص - بواسطة silverlight - 12-08-14, 10:48 AM
RE: ضغط حجم النص - بواسطة abuzzouz - 12-08-14, 11:10 AM
RE: ضغط حجم النص - بواسطة abuzzouz - 13-08-14, 05:40 PM
RE: ضغط حجم النص - بواسطة nmst70 - 14-08-14, 10:14 AM
RE: ضغط حجم النص - بواسطة abuzzouz - 14-08-14, 05:04 PM
RE: ضغط حجم النص - بواسطة abuzzouz - 14-08-14, 11:33 PM
RE: ضغط حجم النص - بواسطة sooriaty03 - 15-08-14, 08:00 AM
RE: ضغط حجم النص - بواسطة silverlight - 15-08-14, 04:46 PM
RE: ضغط حجم النص - بواسطة abuzzouz - 16-08-14, 04:27 PM
RE: ضغط حجم النص - بواسطة abuzzouz - 25-08-14, 12:29 AM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف نستخرج نص الالتاريخ الاول من النص التالي: justforit 0 137 31-10-25, 05:33 PM
آخر رد: justforit
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,870 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  [كود] كود تغيير حجم النص في التكست بوكس hassan 8 8,802 30-01-25, 02:33 AM
آخر رد: خالد كامل1
  بحث بالكومبو بوكس لا ى جزء من النص Lathe1 3 913 28-02-24, 02:59 AM
آخر رد: معاند الحظ
  [VB.NET] استخلاص جزء محدد من نص وإضافته إلى بداية النص ؟ AmeenRashed 2 629 02-01-24, 10:06 AM
آخر رد: AmeenRashed
  دالة ادخال ارقام فقط في مربع النص atefkhalf2004 7 1,518 20-08-23, 09:04 AM
آخر رد: atefkhalf2004
  طريقة حذف حرف زيادة من مربع النص علاء الكبابي 2 938 19-06-23, 05:08 PM
آخر رد: Taha Okla
  اريد كود لمسح النص من textbox بمجرد الضغط على ال textebox للكتابة رهف العريفي 21 13,302 03-06-23, 04:56 AM
آخر رد: سعود
Rainbow [كود] النص المكتوب يكون على شكل وميض او تغير في الالوان محمد مسافر 1 766 13-05-23, 01:30 AM
آخر رد: عبدالله الدوسري
  [VB.NET] كود نسخ النص MOHAMMED ALZWI 2 816 13-03-23, 11:24 AM
آخر رد: MOHAMMED ALZWI

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


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