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



اقوم بتخزينه في ملف xml فيصبح بهذا الشكل الخاطئ



وعند عرضه في المشروع يظهر ايضا بهذا الشكل الخاطئ



الي مدايقني بقي اني انسخ الكود والصقه في المشاركه هنا يظهر مظبوط 

متاح منه اصدار Nokia 220 Dual SIM RM-969 خطين

المشكلة دي تتحل ازاي بارك الله فيكم
الرد }}}
تم الشكر بواسطة:
#2
اعمل له Split و قم بتخزينه علي هيئة كلمات منفردة و حين تحتاجه قم بتحويل الكلمات إلي String
أو يمكن تخزينه علي هيئة مصفوفة و تقوم بقراءة المصفوفة ثم لا حقا و حين تحتاجها تقوم بتحويلها الي String
الرد }}}
تم الشكر بواسطة:
#3
شكرا لك والله توقعت انك ترد فعلا ههههههه الله يوفقك يارب
بالنسبة عن جمع المصفوفه وعرضها تعرض بنفس الشكل
انا وصلت لحل لاكنه صعب التنفيذ
وهو عند رسم النص علي العنصر يتم رسمه مضبوط
لاكن للاسف صعب ارسم كل العناصر الامر صعب جدا
الرد }}}
تم الشكر بواسطة:
#4
دي مشكلة في عرض التكست الذي به أكثر من لغة و كل لغة لها إتجاه مختلف
وعموما كلاسات الجرافكس مكتوبة بأسلوب يستطيع تحديد اتجاه الخط و لهذا وعندما ترسم فإن التكست يظهر بالشكل الصحيح
وبما أن كل الكونترول ترسم String فامر طبيعي أن تجدها تظهر بشكل صحيح

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

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

الحل الأخر هو ان ترسم التكست علي صورة أبعادها تساوي ارتفاع الفونت و 'عرضها يساوي طول التكست
وتضيف الصور لأي كونترول وليكن مثلا ListBox
الرد }}}
تم الشكر بواسطة: ali.alfoly
#5
ببساطة جداً ... عند عرض نص يحتوي علي اكثر من لغة منها اللغة العربية يجب ضبط خاصية RightToLeft للاداة التي تعرض فيها الكتابة الي Yes 
وهتظبط معاك ان شاء الله  
Idea Idea Idea
{‏‏ يَرْفَعِ اللَّهُ الَّذِينَ آمَنُوا مِنكُمْ وَالَّذِينَ أُوتُوا الْعِلْمَ دَرَجَاتٍ‏ }

 " Mohamed M. Bedair     -     " Abu Anas
Genius Live , Egypt
الرد }}}
تم الشكر بواسطة: ali.alfoly
#6
جزاكم الله خيرا لتعاونكم معي ربنا يجعله في موازين حسناتكم
ممكن مثال بسيط علي الجمله دي 
متاح منه اصدار Nokia 220 Dual SIM RM-969 خطين

اريد كود يوضح ازاي يتم وضعها في مصفوفة ثم يتم عرضها في تكست بوكس مثلا 
اريد مثال بسيط لافهم الفكرة
الرد }}}
تم الشكر بواسطة:
#7
في الكود التالي ستجد فكرة لكيفية ضبط إتجاه String به خليط من لغتين مثل الانجليزية و العربية

PHP كود :
       Dim s As String "متاح منه اصدار Nokia 220 Dual SIM RM-969 خطين"

 
       Dim englishChars() As Char = {"a"c"A"c"b"c"B"c"c"c"C"c"d"c"D"c"e"c"E"c"f"c"F"c"g"c"G"c,
 
           "h"c"H"c"i"c"I"c"j"c"J"c"k"c"K"c"l"c"L"c"m"c"M"c"n"c"N"c"o"c"O"c"p"c"P"c,
 
           "q"c"Q"c"r"c"R"c"s"c"S"c"t"c"T"c"u"c"U"c"v"c"V"c"w"c"W"c"x"c"X"c"y"c"Y"c"0"c,
 
           "1"c"2"c"3"c"4"c"5"c"6"c"7"c"8"c"9"c}

 
       Dim l As Integer s.Length 1

        Dim i 
As Integer s.IndexOfAny(englishChars)
 
       Dim first As String s.Substring(0i)
 
       ' الخطوة التالية لنتأكد ان المتغير ليس به غير خروف فقط
        first = first.Trim

        Dim k As Integer = s.LastIndexOfAny(englishChars)
        Dim front As String = s.Substring(k + 1, l - k)

        front = front.Trim

        Dim middle As String = s.Substring(0, l - (front.Length))
        middle = middle.Substring(first.Length, middle.Length - first.Length)

        middle = middle.Trim

        Dim result As String = front + " " + middle + " " + first 

الفكرة يمكن تنفيذها لحالة معينة فقط و هي الحالة التي تحدثت عنها في سؤالك
حاول تستخدم الفكرة و تبني منها شئ أفضل
أنصحك تدرس المصفوفات جيدا فهي واحدة من الأشياء المهمة في الدوت نت و بدونها لا يمكن للمبرمج أن يكون مبرمجا جيدا
الرد }}}
تم الشكر بواسطة:
#8
تمام كده واضحه الفكره من غير ما اجرب
سواء قمت بادخاله في مصفوفة ام لا في النهاية يتم ارسالة الي الخاصية text علي شكل String
المشكلة في خاصية RightToLeft كما ذكر الاخ Genius Live
تم حل هذه المشكلة ومجموعة اخري من المشاكل بالتخلي الكامل عن اداة ListView لان المفروض كل Item يكون له خاصية RightToLeft منفرد
قمت بعرض البينات بلغة html بصراحة ابهرني الاختلاف مع وجود CSS وجافا سكريبت كتير جدا الا انها اسرع بكتير جدا جدا من اداة ListView
اداة ListView من بطئها الشديد كنت عامل صفحة اخري تظهر (يرجي الانتظار جاري تحميل البينات) هههههههه
يتم جلب البينات من قاعدة كبيره في اقل من ثانية ويتم عمل تعديلات كثيرة في اقل من ثانية ثم لعرضها في ListView يجب عليك ان تقول للمستخدم جاري التحميل هههههههه
حقيقي شكرا لتعاونك معي وجزاك الله خيرا
الرد }}}
تم الشكر بواسطة:



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


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