تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
Convert Bitmap To Integer & Viceversa
#1
السلام عليكم ورحمة الله وبركاته

هناك أساليب كثيرة لتخزين الصورة في ملف أو لتخزين الصورة في قواعد البيانات و أحد هذا الأساليب هو تخزين الصورة علي هيئة مصفوفة من البايت ثم استرجاعها عن طريق تحويل مصفوفة البايت الي صورة

لكن هل فكرت يوما في تخزين الصورة علي هيئة رقم ثم ومن هذا الرقم يتم استرجاع الصورة

في هذا الموضوع سيتم توضيح كيفية تحويل الصورة الي رقم حيث يمكن وبكل سهولة تخزين الرقم في ملف عادي او في ملف قواعد البيانات الخاصة بك ثم و عندما تريد إظهار الصورة مرة أخري تقوم بتحويل الرقم الذي تم تخزينه الي صورة مرة أخري

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


الفكرة
فكرة هذا الموضوع تنحصر في تحويل الصورة الي IntPtr أو الي Handle ثم يتم استخراج الصورة مرة أخري من هذا IntPtr


الخطوات التالية توضح كيفية تنفيذ الفكرة

 أولا تحويل الصورة الي رقم
1- يتم تعريف متغير يعبر عن أي صورة
2- استخلاص IntPtr الخاص بتلك الصورة عن طريق استخدام الدالة Bitmap.GetHbitmap
3- تحويل IntPtr الي رقم من النوع Int64 أو إلي Int32
[b]
الدالة التالية توضح كيفية تحويل الصورة إلي رقم حيث يمكن لاحقا تخزين هذ الرقم في ملف بكل سهولة
[/b]



PHP كود :
Friend Function BitmapToInteger(bmp As Bitmap) As Integer
        Dim ptr 
As System.IntPtr System.IntPtr.Zero
        Dim result 
As Integer CType(NothingInteger)
 
       If bmp IsNot Nothing Then
            ptr 
bmp.GetHbitmap()
 
       End If
 
       result ptr.ToInt32
        
' OR, you may use 
        '
result ptr.ToInt64
        If ptr 
<> IntPtr.Zero Then
            ptr 
IntPtr.Zero
        End 
If

 
       Return result
    End 
Function 

ثانيا تحويل الرقم الي صورة
هذا الأمر يحدث باستخدام الدالة Image.FromHbitmap وهنا فقط علينا أن نمرر الرقم الذي حصلنا عليه من الخطوات أعلاه الي تلك الدالة


الدالة التالية توضح كيفية تحويل الرقم إلي صورة


PHP كود :
Friend Function IntegerToBitmap(value As Integer) As Bitmap
        Return Bitmap
.FromHbitmap(value)
 
   End Function 

كيفية استخدام الكود

PHP كود :
 Dim bmp As Bitmap CType(My.Resources.ResourceManager.GetObject("TestingImage"), Bitmap)
 
       Dim bitmapInteger As Integer BitmapToInteger(bmp)


PictureBox1.Image CType(IntegerToBitmap(bitmapInteger), Bitmap

أتمني ان الموضوع يكون مفيدا لكم
تقبلو تحياتي
الرد }}}


الردود في هذا الموضوع
Convert Bitmap To Integer & Viceversa - بواسطة silverlight - 24-03-16, 08:08 PM
RE: Convert Bitmap To Integer & Viceversa - بواسطة myalsailamy - 28-03-16, 10:20 AM
RE: Convert Bitmap To Integer & Viceversa - بواسطة silverlight - 29-03-16, 11:44 AM
RE: Convert Bitmap To Integer & Viceversa - بواسطة myalsailamy - 31-03-16, 11:28 AM
RE: Convert Bitmap To Integer & Viceversa - بواسطة silverlight - 01-04-16, 12:54 AM
RE: Convert Bitmap To Integer & Viceversa - بواسطة CLARO - 28-05-16, 02:17 PM

المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مقدمة إلي ضغط الصور ..... Zip Bitmap silverlight 0 2,599 10-05-18, 04:35 AM
آخر رد: silverlight
  Code Snippet: Convert From Ulong To Byte Array & Vice Versa silverlight 0 1,854 08-05-18, 05:15 PM
آخر رد: silverlight
  Convert structure to byteArray & viceversa silverlight 0 1,854 24-09-17, 01:51 AM
آخر رد: silverlight
  Convert Bitmap To ByteArray & ViceVersa silverlight 0 2,355 22-09-17, 03:13 PM
آخر رد: silverlight
  Convert Delegate to IntPtr & Viceversa silverlight 1 1,902 15-08-17, 04:54 PM
آخر رد: silverlight
  [VB.NET] عمل برنامج تحويل الفيديو video convert alking-0999 0 3,014 09-07-15, 12:50 PM
آخر رد: alking-0999
  معلومة ::: Integer - UInteger RaggiTech 1 1,975 06-10-12, 09:52 PM
آخر رد: RaggiTech

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


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