تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] اضافة علامة مائية للفورم
#9
الكود التالي يوضح كيف ترسم علامة مائية عبارة عن تكست علي سطح الفورم
كود :
Public Class Form1

   Private Sub Form1_Paint(sender As Object, e As PaintEventArgs) Handles MyBase.Paint
       If Me.Width < 0 AndAlso Me.Height < 0 Then
           Return
       End If

       Dim rect As Rectangle = New Rectangle(0, 0, Me.Width, Me.Height)
       Dim bmp As Bitmap = New Bitmap(CInt(Width), CInt(Height), Imaging.PixelFormat.Format32bppArgb)
       Dim inclination As Integer = 315

       If inclination < 0 Then
           inclination = 0
       End If
       If inclination > 360 Then
           inclination = 360
       End If

       Using g As Graphics = Graphics.FromImage(bmp)
           g.SmoothingMode = Drawing2D.SmoothingMode.AntiAlias
           g.Clear(Me.BackColor)

           Dim watermark As String = "Visual Basic For Arab"
           Dim maxFontSize As Integer = 70
           Dim minFontSize As Integer = CInt(Me.Font.Size)
           Dim maxWidth As Integer = bmp.Width
           Dim controlFont As Font = Me.Font
           Dim drawingFont As Font = CType(Nothing, Font)
           Dim bestFitFont As Font = CType(Nothing, Font)
           For i As Integer = minFontSize To maxFontSize Step 1
               drawingFont = New Font(controlFont.Name, i, controlFont.Style)
               Dim textSize As SizeF = g.MeasureString(watermark, drawingFont)
               If maxWidth > CInt(textSize.Width) Then
                   bestFitFont = drawingFont
               End If
           Next

           Dim watermarkTextSize As SizeF = g.MeasureString(watermark, bestFitFont)
           g.TranslateTransform(bmp.Width / 2, bmp.Height / 2)
           g.RotateTransform(inclination)
           g.DrawString(watermark, bestFitFont, New SolidBrush(ControlPaint.LightLight(Me.BackColor)), -(watermarkTextSize.Width / 2), -(watermarkTextSize.Height / 2))
       End Using

       e.Graphics.DrawImage(bmp, 0, 0)
   End Sub

   Private Sub Form1_SizeChanged(sender As Object, e As EventArgs) Handles MyBase.SizeChanged
       Invalidate()
   End Sub


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


الردود في هذا الموضوع
RE: اضافة علامة مائية للفورم - بواسطة silverlight - 01-11-15, 01:41 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  كيف ايجاد أعلى رقم بعد علامة محددة.لحقل الباركود new_programer 6 471 20-01-25, 02:11 AM
آخر رد: new_programer
  اضافة لون للالوان في التاكست بكس أحمد فتح الرحمن 4 467 08-01-25, 04:05 PM
آخر رد: أحمد فتح الرحمن
  اضافة ايام للتاريخ العيدروس 2 376 07-01-25, 02:06 AM
آخر رد: العيدروس
  مشكلة في جلب البيانات من أكسل للفورم سيد درويش 3 375 24-12-24, 01:15 AM
آخر رد: aljzazy
  [سؤال] اضافة ملف Pdf الى الريسورس واستخراجه الى مسار معين .. ackore 6 602 15-11-24, 02:51 AM
آخر رد: justforit
  [VB.NET] اضافة ملاحظة صوتية abo ragab 2 461 15-10-24, 10:14 PM
آخر رد: abo ragab
  كيف يمكن اضافة عناصر للكومبوبوكس اثناء تشغيل البرنامج عن طريق المستخدم haithammoftah 3 2,163 30-09-24, 12:52 AM
آخر رد: asmarsou
  اضافة صورة مخزنة في قاعدة البيانات sql الى الكريستال ريبورت صالح عبدالله 3 463 24-09-24, 09:52 AM
آخر رد: صالح عبدالله
  اضافة اسطر فارعة في الداتا جريد فيو ismaeel 1 559 25-08-24, 02:43 AM
آخر رد: Taha Okla
  [سؤال] مشكلة في اضافة التاريخ محمد العامر 4 533 16-06-24, 04:12 PM
آخر رد: محمد العامر

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


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم