تحويل الصور إلى نص بالترميز Base64

19 يونيو 2017     319 مشاهدة    0 تعليق
تم النشر في #Based64 String 

في مقال اليوم سنتعرف على كيفية تحويل الصور إلى نص بالترميز Base64, لكن قبلها دعونا نتعرف على الترميز Base64, هذا النوع من أنواع الترميزات التي تحول الأعداد الثنائيه Binary إلى نص, فالبيانات الثنائيه يتم التعبير عنها بنص ASCII. طبعاً كل رقم في الترميز Base64 يمثل 6 بتات من البيانات.

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

كما هو من المعروف عند رفع أي صورة في تقنية الـ ASP.NET يتم إستخدام الإداة FileUpload للقيام بعملية رفع الصور, بنفس الطريقة سنقوم بقراءة البيتات التي تمثل الصوره المراد رفعها ومن ثم سيتم تحويلها إلى نص بالترميز Base64 ليتم عرضها أو خزنها في قواعد البيانات.

Protected Sub btnUpload_Click(sender As Object, e As EventArgs)
    Dim stream As Stream = ImageFileUpload.PostedFile.InputStream
    Dim binaryReader As New BinaryReader(stream)
    Dim bytes As Byte() = binaryReader.ReadBytes(CType(stream.Length, Integer))
    Dim base64String As String = Convert.ToBase64String(bytes, 0, bytes.Length)
   '''
End Sub

بعدها يمكنك خزن قيمة المتغير base64String في قاعدة البيانات أو يمكنك من عرض البيانات في أداة الصورة على النحو التالي:

Image1.ImageUrl = "data:image/png;base64," & base64String

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

تويتر فيسبوك قوقل + لينكد إن


اكتب تعليقك