تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مقدمة إلي إخفاء المعلومات - الجزء الثاني
#1
في الجزء الأول الموجود في اللينك التالي قمنا بتوضيح كيفية اخفاء حرف في صورة

الجزء الأول

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

خلاصة الجزء الأول:


PHP كود :
   Private Function ConvertCharToBitmap(chr As CharOptional w As Integer 2Optional h As Integer 2) As Bitmap
        Dim bmp 
As Bitmap = New Bitmap(wh)
 
       Using g As Graphics Graphics.FromImage(bmp)
 
           g.Clear(Color.FromArgb(Convert.ToByte(chr), 000))
 
       End Using
        Return bmp
    End 
Function

 
   Private Function ConvertBitmapToChar(bmp As BitmapOptional x As Integer 1Optional y As Integer 1) As Char
        Return CType
(Convert.ToChar(bmp.GetPixel(xy).A), Char)
 
   End Function 
و الكود التالي يوضح كيفية استخدام الدوال أعلاه

PHP كود :
       ' تحويل الحرف الي صورة
        Dim bmp As Bitmap = ConvertCharToBitmap("D"c)
        ' 
الحصول علي الحرف و إظهار الحرف بشكل ما
        Me
.Text ConvertBitmapToChar(bmp).ToString
        
' إظهار الصورة بشكل ما
        Me.BackgroundImage = bmp 

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


الجزء الثاني:

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

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

1- حفظ المعلومات و حمايتها
2- حماية السورس كود
3- بناء الباركود و قرائته
4- تحويل الملفات الي أنماط مختلفة
5- بناء الفونت
6- بناء الصور المتحركة
7- حماية السيريال الخاص باي برنامج


تحويل الحروف الي صور
الخطوات التالية توضح كيفية تحويل مجموعة من الحروف الي مجموعة صور
1- تعريف الكلمة او الحروف
PHP كود :
Dim s As String "omar amin" 


2 تعريف مصفوفة الصور

PHP كود :
Dim bitmaps As Bitmap() = New Bitmap(s.Length 1) {} 

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

PHP كود :
       For i As Integer 0 To s.Length 1
            Dim c 
As Char s(i)
 
           bitmaps(i) = ConvertCharToBitmap(c)
 
       Next 
وبهذا نكون حصلنا علي مجموعة صور تحتوي علي كل الحروف

تحويل الصور الي حروف مرة أخري

الخطوات التالية توضح ذلك
1- تعريف مصفوفة الحروف

PHP كود :
       Dim Chars As Char() = New Char(bitmaps.Length 1) {} 

2- قراءة كل صورة علي حده و تحويلها الي حرف ثم نضيفها الي مصفوفة الحروف

PHP كود :
       For i As Integer 0 To bitmaps.Length 1
            Dim c 
As Char ConvertBitmapToChar(bitmaps(i))
 
           Chars(i) = c
        Next 

3- تحويل الحروف الي كلمة مرة أخري


PHP كود :
       Dim result As String ""
 
       For j As Integer 0 To Chars.Length 1
            result 
+= Chars(j)
 
       Next 

من المؤكد انه يمكنكم تقليل حجم الكود لكن انا كتبته بهذا الاسلوب للتوضيح فقط

خلاصة المرحلة الثانية هي الدوال التالية التي يجب ان يتم استخدامها مع الدوال الخاصة بالمرحلة الأولي


PHP كود :
  Private Function ConvertBitmapsToChars(bitmaps As Bitmap()) As Char()
 
       Dim Chars As Char() = New Char(bitmaps.Length 1) {}
 
       SyncLock Chars
            For i 
As Integer 0 To bitmaps.Length 1
                Dim c 
As Char ConvertBitmapToChar(bitmaps(i))
 
               Chars(i) = c
            Next
        End SyncLock

        Return Chars
    End 
Function

 
   Private Function ConvertStringToBitmaps(As String) As Bitmap()
 
       Dim bitmaps As Bitmap() = New Bitmap(s.Length 1) {}
 
       SyncLock bitmaps
            For i 
As Integer 0 To s.Length 1
                Dim c 
As Char s(i)
 
               bitmaps(i) = ConvertCharToBitmap(c)
 
           Next
        End SyncLock

        Return bitmaps
    End 
Function 

,و الكود التالي يوضح كيفية استخدام الدوال أعلاه


PHP كود :
       Dim s As String "omar amin"
 
       Dim bitmaps As Bitmap() = ConvertStringToBitmaps(s)
 
       Dim chars As Char() = ConvertBitmapsToChars(bitmaps)

 
       Dim result As String ""
 
       For j As Integer 0 To chars.Length 1
            result 
+= chars(j)
 
       Next
        Me
.Text result 
الرد
#2
في المرفقات ستجدون نسخة كاملة من الكود و ذلك بعد تحويل الكود الي كلاسان
احدهما يستخدم في اخفاء التكست
و الكلاس الاخر يستخدم في اظهاره مرة ثانية
و الكلاسان تم كتابتهما بأسلوب يضمن عدم وجود خطأ أثناء التنفيذ طبعا هذا في حالة أنه لم يتم تمرير بيانات بشكل صحيح

الفكرة قابلة للتطوير و التعديل و الأمر متروك لمن يتعلم و يستفيد


الملفات المرفقة
.rar   Test_StringHiding.rar (الحجم : 60.2 ك ب / التحميلات : 54)
الرد


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مقدمة إلي ضغط الصور ..... Zip Bitmap silverlight 0 837 10-05-18, 04:35 AM
آخر رد: silverlight
  إخفاء المعلومات Stegnography مجرد وجهة نظر silverlight 1 815 20-04-18, 07:29 PM
آخر رد: silverlight
  حساب قيمة معادلة(اقصد صيغة دون مجاهيل) مكتوبة بالتكست : الجزء الخامس والاخير محمد شريقي 4 2,457 23-02-18, 10:44 PM
آخر رد: العواد الصغير
  التعامل مع الصور Images في بيئة الدوت نت باستخدام +GDI - مقدمة RaggiTech 2 2,356 22-01-18, 12:49 AM
آخر رد: amna jamal
  إخفاء تكست في صورة silverlight 0 1,069 02-07-17, 09:31 AM
آخر رد: silverlight
  مقدمة الي تشفير الحروف الأبجدية العربية silverlight 1 3,458 23-04-17, 08:23 PM
آخر رد: abdalamask
  مقدمة إلي إخفاء المعلومات - الجزء الأول silverlight 5 1,807 07-01-17, 10:44 PM
آخر رد: Basil Abdallah
  تحويل الفيديو في برامجك-الجزء الثاني( إصلاح للمشاكل + تعديل للروابط + توضيح للأمر ) RaggiTech 1 1,912 10-12-14, 06:37 PM
آخر رد: abulayth
  الجزء الثالث من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج (الأقواس المتعددة) !! أنس محمود 9 4,171 06-12-14, 10:11 PM
آخر رد: RFEE3 ALSHAN
  الجزء الثاني من:كيف تجعل الـ Text Box ذكي!يترجم العمليات الحسابية ويخرج الناتج ( العمليات المتعددة)! أنس محمود 0 1,768 22-02-13, 12:39 AM
آخر رد: أنس محمود

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


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