السلام عليكم
من لديه قاعدة بيانات تحتوي اسماء عربية ومقابلها ترجمتها بالأنجليزي؟؟؟
يعني ترجمة كلمة صالح هي Saleh
تحياتي لكم
السلام عليكم
من لديه قاعدة بيانات تحتوي اسماء عربية ومقابلها ترجمتها بالأنجليزي؟؟؟
يعني ترجمة كلمة صالح هي Saleh
تحياتي لكم
لا إجابة
السلام عليكم ورحمة الله
أخي العزيز لم أفهم ما تريده .... إذا أردت أنت تصميم قاعدة البيانات عليك أن تعرف عامودين للاسم عامود اسم العربي وعامود اسم الإنجليزي ... على الأغلب هيك إلا
إذا في طريقة أخى أفضل منها انا لا أعرفها ....
انا حاليا بصدد إنشاء هذه الفكرة ..أرجوا من الأعضاء الكرام توضيح فكرة تغيير لغة الواجهة وما يترتب عليها في قاعدة البيانات وفي الواجهة
أتمنى لكم التوفيق و النجاح
من وجد الله فماذا فقد -- ومن فقد الله فماذا وجد
Don't Say I Don't Know But Say I Will Try
مرحباً أخواني الكرام .
إذا كان المقصود كيف يمكنك عمل البرنامج متعدد اللغات :
يمكنك استخدام ملف نصي يحوي عدة أسطر ( كل سطر يمثل عنوان زر ما ), هذه العملية ستبط عليكم جهد طلب بعض المستخدمين لكتابة لغتهم الخاصة .
لتبسيط الفكرة :
في مجلد منشأ في مجلد البرنامج, ولنفرض أن البرنامج موجود في ( D:\MyApplication ) والمجلد الخاص باللغات منشأ في نفس المكان ( D:\MyApplication\Languages ), يمكنك قراءة الملفات كالتالي :
[color= #000000; font-weight: bold;]Private [color= #000000; font-weight: bold;]Function GetAvailabeLanguages[color= #009900;]( Byval Path [color= #b1b100;]As String[color= #339933;], Byref AvailableLanguages [color= #b1b100;]As [color= #990000;]List[color= #009900;]( Of String [color= #009900;])[color= #009900;]) [color= #b1b100;]As Boolean[color= #009900;]([color= #009900;]) Dim Files[color= #009900;]([color= #009900;]) [color= #b1b100;]As String [color= #339933;]= IO[color= #339933;].Directory[color= #339933;].GetFiles[color= #009900;]( Path[color= #339933;], [color= #0000ff;]"*.txt"[color= #339933;], [color= #cc66cc;]0 [color= #009900;]) [color= #b1b100;]If Files[color= #339933;].Length [color= #339933;]> [color= #cc66cc;]0 Then [color= #b1b100;]For [color= #990000;]Each FileName [color= #b1b100;]As String In Files AvailableLanguages[color= #339933;].Add[color= #009900;]( IO[color= #339933;].Path[color= #339933;].GetFileNameWithoutExtension[color= #009900;]( FileName [color= #009900;]) [color= #009900;]) [color= #990000;]Next FileName [color= #b1b100;]Return [color= #000000; font-weight: bold;]True [color= #990000;]End [color= #b1b100;]If [color= #b1b100;]Return [color= #000000; font-weight: bold;]False [color= #990000;]End [color= #000000; font-weight: bold;]Function
استخدام ( Usage ) :
Public Class Form1 Dim Path As String = IO.Path.Combine( Application.StartupPath, "Languages\" ) Dim AvailableLanguages As New List( Of String ) Private Sub Form1_Load( Byval Sender As System.Object, _ Byval E As System.EVentArgs ) Handles MyBase.Load If GetAvailableLanguages( Path, AvailableLanguages ) Then For Each Lng As String In AvailableLanguages Dim NewLang As New ToolStripMenuItem( Lng ) NewLang.Tag = Path & Lng & ".txt" AddHandler NewLang.Click, AddressOf Langs_Cick Next Lng End If End Sub Private Sub Langs_Click( Byval Sender As System.Object, Byval E As System.EventArgs ) Dim MNUItem As ToolStripMenuItem = DirectCast( Sender, ToolStripMenuItem ) ' هنا عليكم استدعاء عملية إدراج اللغة, كمثال ( SetLanguage ) وهذه العملية لها Param يدعى ( Path ) ' أي اننا سنجعل العملية تقرأ مباشرةً من الملف ( الملف النصي ) . SetLanguage( MNUItem.Tag.ToString ) End Sub Private Sub SetLanguage( Byval Path As String ) Dim MaxItems As Integer = 100 ' فرضنا أنه لدينا 100 عنصر . Dim Language() As String = IO.File.ReadAllLines( Path ) ' عليكم استخدام جملة شرطية للتأكد أن ملف اللغة يناسب محتويات البرنامج . If Language.Length = MaxItems Then ' امثلة بسيطة Button1.Text = Language( 0 ) Button2.Text = Language( 1 ) Button3.Text = Language( 2 ) End If End Sub End Class
هنالك طرق عديدة لعمل المذكور, كان لدي مشروع يتكلم عن هذه الفكرة, سأحاول البحث عنه :) .
إذا كان قصد الأخ Qaher أنه يريد ملف قاعدة بيانات يحوي جميع مصطلحات اللغة الإنكليزية بمايقابلها في اللغة العربية, فدعني أقول لك شيئاً ( لا أعتقد أن الذين سهروا الليالي في جمع مصطلحات إنكليزية لعمل مترجم, سيكونون مسرورين لتوزيعها مجاناً, فإذا كان البرنامج الذي يحوي هذه البيانات غير مجاني, وأنت على علم أنك غير قادر على استخدامك اياها مع برنامجك حتى بعد شراء البرنامج خاصتها :S .
بالتوفيق للجميع, أي أسئلة على ( كيف يمكنني جعل البرنامج متعدد اللغات ) بإنتظار :) .
تم تعديل هذه المشاركة بواسطة Bashar Rabat في 6 يناير 2009 في 14:26
The important thing is not so much
that every child should be taught,
as that every child should be given the wish to learn.
السلام عليكم
ان لم اخطىء فأعتقد انك تقصد ان لديك اسماء في قاعدة البيانات باللغة العربية وفي لحظة التشغيل والتنقل ترتجم هذه الاسماء بواسطة البرنامج الى اللغة الانكليزية , ان كان هذا ماتقصد فسأقول لك ان هذا الشيء ليس بالسهل ولكنه ليس مستحيل - انت لديك خيارات عديدة وافضل الخيارات هي : قبل ان ابدأ بالشرح ارغب بالقول انني لست جيد كفاية بقواعد اللغة العربية
1- تعريف الاسماء المشهورة والتي كتابتها لاتشبه لفظها مثل عبد الرحمن = Abd El Rhman وكذلك الاسماء الاخرى التي ان لم يتم العثور عليها فسيتم التحويل الى الخطوة الثانية
2- تصميم دالة او اجراء برمجي او اي شي من هذا القبيل يقوم بمحاكاة الكلمة العربية ويعتمد او يحاول الاقتراب قدر الامكان لفهم القواعد العربية اثناء تحويلها الى اللغة الانكليزية
سأترك لك فكرة بسيطة لتقوم بذلك ممثلة مشروع صغير مرفق مع الرد - مع العلم انها مجرد فكرة ولم تاخذ من الوقت ولكني توقفت قليلا في البرمجة عند الوصول للحرف "ي" لأحاول الوصول الى القواعد العربية فمثلا اذا كان الأسم "ياسر" فمعنى هذا ان الاسم يجب ان يكتب هكذا "YASER" ولكن اذا كان الاسم "امين" فيجب كتابة الاسم هكذا "AMEN" وضعت الشرط اذا كان حرف الياء قد جاء في بداية الكلمة فسيتحول الى حرف ال"Y" باللغة الانكليزية اما اذا جاء في مكان اخر ماعدا هذا فسيكون "E" مع الاخذ بالحسبان انه قد يكون الاسم مركب مثلا "يسرى ياسر" فعند وجود فراغ قبل الكلمة يجب ان تعامل مثل ما تعامل الكلمة عند بداية جملة , الموضوع اعقد من هذا بكثير فالأسماء تختلف كتابتها باختلاف الاحرف التي قبلها او التي بعدها , على اي حال المشروع مرفق وهو بسيط جدا ويمكنك ان تفهم الفكرة.
وهذه فكرة الكود
Public Class Form1
تحياتي
عذراً على التدخل, لكني أحب الإختصار .
الـ Code التالي هو Code استخدمته في ترجمة لغة الـ Chat التي استخدمها ( ومازال يستخدمها معظم العرب ) لتخاطب بلغة خاصة :
Module Translator
Private NormalChars() As String = {"ِ", "ُ", "ً", "ْ", "ال", "ال", "اكس", "ى", "أ", "إ", "آ", "ا", "ب", "ب", "ت", "ث", "ج", "ح", "خ", "د" _
, "ذ", "ر", "ز", "ش", "سِ", "كِ", "س", "ض", "ص", "ظ", "ط", "غ", "ع", "ف", "ف", "ق", "ك", "لّ", "ل", "م", "ن", "ه" _
, "و", "و", "ي", "يّ", "ء", "ة", Nothing}
Private SpecialChars() As String = {"-e-", "-o-", "-n-", "-", "al-", "al", "x", "a_", "2a", "2e", "2~", "a", "b", "p", "t", "s^", "g", "7", "5", "d" _
, "z^", "r", "z", "sh", "ci", "c", "s", "'9", "9", "'6", "6", "'3", "3", "f", "v", "q", "k", "ll", "l" _
, "m", "n", "h", "o", "w", "i", "y", "2", "8", "e"}
Public Function TranslateIntoSpecial(ByVal Text As String) As String
If Text = String.Empty Then
Return ""
Else
Dim NewText As String = Text
For I As Integer = 0 To NormalChars.Length - 1
Try
NewText = NewText.Replace(NormalChars(I), SpecialChars(I))
Catch
End Try
Next
Return NewText
End If
End Function
Public Function TranslateIntoNormal(ByVal Text As String) As String
If Text = String.Empty Then
Return ""
Else
Dim NewText As String = Text
For I As Integer = 0 To NormalChars.Length - 1
Try
NewText = NewText.Replace(SpecialChars(I), NormalChars(I))
Catch
End Try
Next
Return NewText
End If
End Function
End Moduleالكود قادر على التحويل بين اللغتين العربية والعربية المرمزة بالأحرف الإنكليزية وبعض الأرقام .
تم تعديل هذه المشاركة بواسطة Bashar Rabat في 6 يناير 2009 في 19:31
The important thing is not so much
that every child should be taught,
as that every child should be given the wish to learn.
السلا م عليكم ورحمة الله وبركاته
جزاكم الله خيرا أخواني ( Bashar Rabat , ZaiDriX ) ما شاء الله جهد راائع وإن شاء الله رح أستفيد من أكوادكم كثير
أتمنى لكم التوفيق و النجاح
--- والنصر لقضية المسلمين إن شاء الله ---
من وجد الله فماذا فقد -- ومن فقد الله فماذا وجد
Don't Say I Don't Know But Say I Will Try
مرحباً أخواني الكرام .
لقد أرفقت مثال بسيط ( جداً ) عن كيفية استخدام ملفات نصية لجعل البرنامج ذات واجهة متعددة اللغات, للأسف لم أتمكن من إيجاد المشروع الذي تكلمت عنه :( .
بالتوفيق للجميع .
The important thing is not so much
that every child should be taught,
as that every child should be given the wish to learn.
مرحباً أخواني الكرام .
لاحظت أني نسبت إضاقة شيء مهم وهو تثبيت اللغة بعد التغيير أي إذا قام المستخدم بتغيير اللغة وأغلق البرنامج وأعاد فتحه سيجد أن اللغة مازالت كما وضعها :) .
طبعاً يتم الإعتماد على خاصية نصية تم إنشاءها في الـ Settings القيمة الإفتراضية English .
بالتوفيق .
تم تعديل هذه المشاركة بواسطة Bashar Rabat في 7 يناير 2009 في 17:24
The important thing is not so much
that every child should be taught,
as that every child should be given the wish to learn.
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…