تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[VB.NET] إضافه نص الي صوره بحيث يكون اسفل الصوره بدون استقطاع اي جزء منها
#1
السلام عليكم ورحمة الله وبركاته 

الاخوه الكرام تقبلو فائق الاحترام 
   

ارجو مساعدتي  في

إضافه نص الي صوره بحيث يكون اسفل الصوره بدون استقطاع اي جزء منها

اي انه اضافه للصوره ويكون جزء منها عند الحفظ  

وهذه صورة للتوضيح



ولكم جزيل الشكر

حسناً كبدايه انا استطيع اضافة نص علي الصوره  وجعله يصل الي اسفلها ولكنه يتواجد فوقها من الاسفل وانا اريده اسفلها بمسافه  
كود :
   Dim gr As Graphics
   Dim dr_bitmab As Bitmap

   Dim penprush As New Drawing.SolidBrush(Color.Black)
   Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

       dr_bitmab = New Bitmap(PictureBox2.Image)
       'Dim cono As Bitmap = New Bitmap(PictureBox2.Width, PictureBox2.Height + 50)
       gr = Graphics.FromImage(dr_bitmab)
       imgQR.Image = dr_bitmab
       gr.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
       'gr.DrawString(RichTextBox1.Text, RichTextBox1.Font, penprush, PictureBox2.Location)
       gr.DrawString(TextBox3.Text, New Font("Times New Roman", 16, FontStyle.Bold), New SolidBrush(Color.Red), New PointF(5, 90))
       'dr_bitmab.  Save (TextBox2.Text, System.Drawing.Imaging.ImageFormat.Jpeg)

   End Sub
اتمني ان تكون مشاركتي إثراء للموضوع وليست إعسار له
الرد }}}
تم الشكر بواسطة:
#2
(30-10-16, 11:06 PM)جوري كتب : السلام عليكم ورحمة الله وبركاته 

الاخوه الكرام تقبلو فائق الاحترام 


ارجو مساعدتي  في

إضافه نص الي صوره بحيث يكون اسفل الصوره بدون استقطاع اي جزء منها

اي انه اضافه للصوره ويكون جزء منها عند الحفظ  

وهذه صورة للتوضيح



ولكم جزيل الشكر

حسناً كبدايه انا استطيع اضافة نص علي الصوره  وجعله يصل الي اسفلها ولكنه يتواجد فوقها من الاسفل وانا اريده اسفلها بمسافه  
كود :
   Dim gr As Graphics
   Dim dr_bitmab As Bitmap

   Dim penprush As New Drawing.SolidBrush(Color.Black)
   Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click

       dr_bitmab = New Bitmap(PictureBox2.Image)
       'Dim cono As Bitmap = New Bitmap(PictureBox2.Width, PictureBox2.Height + 50)
       gr = Graphics.FromImage(dr_bitmab)
       imgQR.Image = dr_bitmab
       gr.SmoothingMode = Drawing2D.SmoothingMode.HighQuality
       'gr.DrawString(RichTextBox1.Text, RichTextBox1.Font, penprush, PictureBox2.Location)
       gr.DrawString(TextBox3.Text, New Font("Times New Roman", 16, FontStyle.Bold), New SolidBrush(Color.Red), New PointF(5, 90))
       'dr_bitmab.  Save (TextBox2.Text, System.Drawing.Imaging.ImageFormat.Jpeg)

   End Sub
شكرا اخواني الكرام تم الحل  وهذه هي الطريقه
كود :
Public Function AddBorder(ByVal bm As Bitmap, ByVal borderColor As System.Drawing.Color, ByVal borderWidthInPixels As Integer) As Bitmap

       Dim newBitmap As New Bitmap(bm.Width + (borderWidthInPixels * 2), bm.Height + (borderWidthInPixels * 2))

       '************************************************************************
       '  Draw the border
       '************************************************************************
       ' Top
       For x As Integer = 0 To newBitmap.Width - 1
           For y As Integer = 0 To borderWidthInPixels
               newBitmap.SetPixel(x, y, borderColor)
           Next
       Next

       ' Bottom
       For x As Integer = 0 To newBitmap.Width - 1
           For y As Integer = newBitmap.Height - 1 To (newBitmap.Height - 1) - borderWidthInPixels Step -1
               newBitmap.SetPixel(x, y, borderColor)
           Next
       Next

       ' Left
       For x As Integer = 0 To borderWidthInPixels
           For y As Integer = 0 To newBitmap.Height - 1
               newBitmap.SetPixel(x, y, borderColor)
           Next
       Next

       ' Right
       For x As Integer = newBitmap.Width - 1 To (newBitmap.Width - 1) - borderWidthInPixels Step -1
           For y As Integer = 0 To newBitmap.Height - 1
               newBitmap.SetPixel(x, y, borderColor)
           Next
       Next

       '************************************************************************
       '  Insert the old image into the bitmap
       '************************************************************************
       Dim gr As System.Drawing.Graphics = Graphics.FromImage(newBitmap)
       gr.DrawImage(bm, borderWidthInPixels, borderWidthInPixels, bm.Width, bm.Height)
       gr.Dispose()

       Return newBitmap


   End Function
منقول من هنا

استدعيتها هكذا بداخل button
كود :
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click

       Dim bm As New Bitmap(PictureBox3.Image)
       PictureBox2.Image = AddBorder(bm, Color.White, 10)
   End Sub
اتمني لكم الافاده

استطيع الان وضع النص في الاطار الذي يلف الصوره كما هو موضح في هذا الكود من خلال زياده قيمة الارتفاع

كود :
       gr.DrawString(TextBox3.Text, New Font("Times New Roman", 16, FontStyle.Bold), New SolidBrush(Color.Red), New PointF(5, 90))
من خلال  تغيير الرقم 90

هذا الرد للايضاح فقط
اتمني ان تكون مشاركتي إثراء للموضوع وليست إعسار له
الرد }}}
تم الشكر بواسطة: myalsailamy , ممدوح
#3
شيء جميل لما الواحد  يضع سؤال ما يستسلم  يحاول و يحاول  الى ان يجد ضالته  ،، و الاجمل لما يضع الحل الذي وصل اليه

همسه :  
انت بالطريق الصحيح في البرمجه و حل مشاكلك بنفسك ، ناقصك فقط خبره لتعرف الكلمات المفتاحيه التي يجب عليك انت تكتبها في قوقل لتجد اجاباتك و انت بدأت في هذا المشوار ، و ان شاء الله بعد سنين ستتذكر كلامي هذا ، مشكلة اي باحث عن اجابه هو عدم تقسيم السؤال الذي يبحث عنه بسبب عدم امتلاكه  الخبره او الكسل (و هذي بداية فشل المبرمج الجديد  ، و بالمناسبه هذا النوع لا يستمر بالبرمجه بعد التخرج) ، بمعنى انه يسأل لكي يحصل على الاجابه كامله ، و هذا خطأ ، مهارات البحث عن المشاكل البرمجيه هو ان تجزأ  بحثك وهو كما فعلت في موضوعك بنجاح  ، أولا بحثت كيف تزيد طول الصورة ، بعدها كيف تكتب نص ، و بعدها لو كان النص عربي كيف تكتبه من اليمين الى اليسار ،و بعدها كيف  ترسم اطار حول الصوره  ، بعدها  كيف تغير شكل الاطار اما خط واحد او خطين بالاضافه الى تغيير لونه  ...الخ  

تحياتي لك
اسم معرفي : محمد يحيى
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy , ممدوح , جوري
#4
وعليكم السلام ورحمة الله وبركاته

بارك الله فيك وفي أخينا محمد لثناءه وتوجيهاته

رأيت كود الدالة AddBorder ورأيته فقط لعمل إطار حول الصورة فتجبت لطوله واستخدامه حلقات For
المسألة أبسط من ذلك باستخدام gr.Clear جربي هذا الكود
كود :
Public Function AddBorderX(ByVal bm As Bitmap, ByVal borderColor As System.Drawing.Color, ByVal borderWidthInPixels As Integer) As Bitmap
    Dim newBitmap As New Bitmap(bm.Width + (borderWidthInPixels * 2), bm.Height + (borderWidthInPixels * 2))
    Dim gr As System.Drawing.Graphics = Graphics.FromImage(newBitmap)
    gr.Clear(borderColor)
    gr.DrawImage(bm, borderWidthInPixels, borderWidthInPixels, bm.Width, bm.Height)
    Return newBitmap
End Function
الرد }}}
تم الشكر بواسطة: Amir_Alzubidy , Amir_Alzubidy , جوري , جوري
#5
(31-10-16, 09:14 AM)myalsailamy كتب : شيء جميل لما الواحد  يضع سؤال ما يستسلم  يحاول و يحاول  الى ان يجد ضالته  ،، و الاجمل لما يضع الحل الذي وصل اليه

همسه :  
انت بالطريق الصحيح في البرمجه و حل مشاكلك بنفسك ، ناقصك فقط خبره لتعرف الكلمات المفتاحيه التي يجب عليك انت تكتبها في قوقل لتجد اجاباتك و انت بدأت في هذا المشوار ، و ان شاء الله بعد سنين ستتذكر كلامي هذا ، مشكلة اي باحث عن اجابه هو عدم تقسيم السؤال الذي يبحث عنه بسبب عدم امتلاكه  الخبره او الكسل (و هذي بداية فشل المبرمج الجديد  ، و بالمناسبه هذا النوع لا يستمر بالبرمجه بعد التخرج) ، بمعنى انه يسأل لكي يحصل على الاجابه كامله ، و هذا خطأ ، مهارات البحث عن المشاكل البرمجيه هو ان تجزأ  بحثك وهو كما فعلت في موضوعك بنجاح  ، أولا بحثت كيف تزيد طول الصورة ، بعدها كيف تكتب نص ، و بعدها لو كان النص عربي كيف تكتبه من اليمين الى اليسار ،و بعدها كيف  ترسم اطار حول الصوره  ، بعدها  كيف تغير شكل الاطار اما خط واحد او خطين بالاضافه الى تغيير لونه  ...الخ  

تحياتي لك
وسام علي صدري  - انار الله لك الدنيا وزادك من علمه 
وادخل البهجه علي صدرك -وسقاك من حوض نبيه  الكريم - واظلك تحت عرشه 

والله - لقد قرأت ردك الكريم - وكلما انتهيت احببت قرائته مرة اخري وهذا ما يحدث لي في كل مره

تدخل البهجه الي صدري بفضل الله وحده وكنت سببا - يزيدني ثقة في ان ما اقضيه من وقت في البرمجه لا يضيع هباء

ويكفي ان وجودك في الموضوع يعلي من شأن كاتبه 

"أستاذي واخي الكريم "محمد يحيى" تقبل فائق احترامي

ولك جزيل الشكر بعد الله

(31-10-16, 02:08 PM)ممدوح كتب : وعليكم السلام ورحمة الله وبركاته

بارك الله فيك وفي أخينا محمد لثناءه وتوجيهاته

رأيت كود الدالة AddBorder ورأيته فقط لعمل إطار حول الصورة فتجبت لطوله واستخدامه حلقات For
المسألة أبسط من ذلك باستخدام gr.Clear جربي هذا الكود
كود :
Public Function AddBorderX(ByVal bm As Bitmap, ByVal borderColor As System.Drawing.Color, ByVal borderWidthInPixels As Integer) As Bitmap
   Dim newBitmap As New Bitmap(bm.Width + (borderWidthInPixels * 2), bm.Height + (borderWidthInPixels * 2))
   Dim gr As System.Drawing.Graphics = Graphics.FromImage(newBitmap)
   gr.Clear(borderColor)
   gr.DrawImage(bm, borderWidthInPixels, borderWidthInPixels, bm.Width, bm.Height)
   Return newBitmap
End Function
وبارك الله فيك  , اخي ممدوح 
سلمت اناملك الذكيه - لقد فهمته فعدلته - فاصبح بسيطا -يسهل فهمه 
وقد جربته وقام بنفس الوظيفه بالفعل 
فشكرا جزيلا لك 


 
اتمني ان تكون مشاركتي إثراء للموضوع وليست إعسار له
الرد }}}
تم الشكر بواسطة: ممدوح


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  فلترة datagridview بدون قاعدة بيانات صالح عبدالله 3 295 02-02-24, 04:07 PM
آخر رد: صالح عبدالله
  [VB.NET] مساعدة في استدعاء البيانات معينه من form الأول إلى form 2 بدون التعديل loay775 2 275 18-01-24, 05:04 PM
آخر رد: loay775
  [VB.NET] السلام عليكم ممكن مساعدة اخوان احتاج يكون تسجيل الدخول textbox1 + textbox2 Coder_iraqii 4 400 18-12-23, 06:46 PM
آخر رد: Kamil
  كيف يتم تعبئة قريد فيو بدون قاعدة بيانات بشكل مباشر؟ nowiglah 1 375 01-12-23, 10:57 PM
آخر رد: Taha Okla
  محتاج تعديل على سورس كود - حفظ البيانات بدون قاعدة بيانات new_programer 5 628 30-08-23, 12:21 AM
آخر رد: atefkhalf2004
  اظهار السعر اسفل الصنف atefkhalf2004 2 397 28-07-23, 03:03 AM
آخر رد: atefkhalf2004
  [VB.NET] حساب ايام اجازة بدون ايام الجمعة والسبت وعطلات البلد ahmed_king2023 0 453 05-06-23, 03:48 PM
آخر رد: ahmed_king2023
Rainbow [كود] النص المكتوب يكون على شكل وميض او تغير في الالوان محمد مسافر 1 460 13-05-23, 01:30 AM
آخر رد: عبدالله الدوسري
  [سؤال] طباعة تقرير بدون كريستال ريبورت a.ali1509 0 482 01-05-23, 11:22 AM
آخر رد: a.ali1509
  تعديل على كود حفظ بدون تكرار مصمم هاوي 11 1,254 18-03-23, 09:02 AM
آخر رد: مصمم هاوي

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


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