تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
[سؤال] الحصول علي صورة بمقاس معين وجودة معينة من داخل ايقونة
#16
أعتذر ......أنا ما كنت شفت البرنامج الموجود ف الكودبروجكت....شوف الصورة حسبما فهمت بتكون عبارة عن شريحة من الصور

الكود ادناه سوف يتعامل مع هذا النوع من الصور بشرط ان الصورة تكون موجودة في Resources الخاصة بمشروعك
عموما طالما تستطيع أن تستخلص الصورة أو إن الصورة بالفعل معك أي شئ أخر سهل جدا بعد ذلك.

الفكرة تنحصر في انك محتاج يكون لديك الصورة في Resources المشروع ثم تجعل Build Action الخاص ب الصورة Embeded

ثم نفذ الخطوات التالية:

1- تعريف Array و هي التي سوف نقوم بتخزين كل الصور بداخلها

كود :
Private images As Image()

2 - تقوم بتعريف الصورة الموجودة في Resources
وممكن تتعامل معها بشكل مباشر
الحقيقة انا أفضل تعريف صورة أخري حيث تكون الصورة الثانية بمثابة clone من الصورة الاصلية

كود :
Dim ResourcesBitmap As Bitmap = My.Resources.ImageStrip_Jpeg
        Dim bmp As Bitmap = CType(ResourcesBitmap.Clone(), Bitmap)

3- تحديد عدد الصور ف الشريحة و غالبا أنت هنا تتعامل مع شريحة افقية بها عدد أفقي من الصور ثم تمرر هذا العدد الي Array الموجودة في الخطوة الأولي

كود :
Dim count As Integer = bmp.Width / bmp.Height
        images = New Image(count) {}

4 - تعريف متغير عبارة عن مستطيل نحدد به أبعاد كل صورة
كود :
Dim rect As Rectangle = New Rectangle(0, 0, bmp.Height, bmp.Height)

5- نقوم بعمل loop لنقرأ الصور الموجودة في شريحة الصور ثم نضيف كل صورة الي مصفوفة الصور

كود :
For i As Integer = 0 To count - 1
            images(i) = bmp.Clone(rect, bmp.PixelFormat)
            rect.X += bmp.Height
        Next

6- الأن مصفوفة الصور بهها كل الصور...أفترض أنك تستطيع الأن استخدام مصفوفة الصور كما تشاء

مثلا ممكن تعرض الصورةالصورة الأولي في المصفوفة في PictureBox مثلا أو تحفظها علي جهاز

كود :
Me.PictureBox1.Image = images(0)

الكود الاجمالي سيكون شكله كالتالي

كود :
Private images As Image()

Dim ResourcesBitmap As Bitmap = My.Resources.ImageStrip_Jpeg
        Dim bmp As Bitmap = CType(ResourcesBitmap.Clone(), Bitmap)
        Dim count As Integer = bmp.Width / bmp.Height
        images = New Image(count) {}

        Dim rect As Rectangle = New Rectangle(0, 0, bmp.Height, bmp.Height)
        For i As Integer = 0 To count - 1
            images(i) = bmp.Clone(rect, bmp.PixelFormat)
            rect.X += bmp.Height
        Next

        Me.PictureBox1.Image = images(0)

عند تنفيذ الكود سيكون بطئ قليلا في البداية
لذلك الأفضل ان يتم كتابة الكود علي هيئة كلاس أو موديول و استخدامه من داخل مشروعك في مشروعك

عموها هذه هي الفكرة بشكل عام
الرد }}}
تم الشكر بواسطة:


الردود في هذا الموضوع
RE: الحصول علي صورة بمقاس معين وجودة معينة من داخل ايقونة - بواسطة silverlight - 02-06-14, 10:34 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  [سؤال] طريقة توسيط النص داخل اداة comboBox سمير1404 7 3,860 24-08-25, 01:01 PM
آخر رد: أبو خالد الشكري
  اريد كود معين اثابكم الله خالد كامل1 1 456 04-02-25, 09:28 PM
آخر رد: aliday03
  كيفية احتساب الفرق بين تاريخين بناء على عدد معين مصمم هاوي 2 554 15-01-25, 02:02 PM
آخر رد: مصمم هاوي
  طريقة جلب نوع ملفات معينة heem1986 3 485 31-12-24, 11:32 PM
آخر رد: aljzazy
  حذف علامات معينة محمد خيري 3 286 21-12-24, 02:47 PM
آخر رد: aljzazy
  إدراج صورة الموظف من خلال رابط في حقل من قاعدة البيانات saud1004 4 541 13-12-24, 04:48 AM
آخر رد: saud1004
  استدعاء من جدولين داخل اداه FlowLayoutPanel برجاء الافادة للضرورة جداً modymody300894 7 639 15-11-24, 11:02 AM
آخر رد: modymody300894
  [سؤال] اضافة ملف Pdf الى الريسورس واستخراجه الى مسار معين .. ackore 6 602 15-11-24, 02:51 AM
آخر رد: justforit
  معرفة عدد صفوف الجريد فيو بشرط معين modymody300894 4 658 12-11-24, 02:22 PM
آخر رد: salamandal
  كتابه عدد معين من الارقام داخل تيكست بوكس modymody300894 3 559 07-11-24, 09:15 PM
آخر رد: modymody300894

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


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