الشبكة العربية لمطوري الألعاب

خبير مدير وسام البهنسي مشاركة 11

بتاريخ 04 ابريل 2009 12:23 م، قطب أحمد عبد الغني حاجبيه بشدة وهو يقول:

سبقك بها عكاشة 😄
 
XNA لا يدعم الكتابة بالعربية من اليمين لليسار، ولا يدعم توصيل الأحرف. لذلك استخدامك لكلاس SpriteFont لن يفي بالغرض.

صحيح. لذلك فقد قمت بتقديم طلب لدعم هذه الميزة عند مايكروسوفت. أرجو من جميع من يهمهم الأمر تقييم وتحقيق الطلب كي يأخذ أهمية أكبر:
 
https://connect.microsoft.com/feedback/ViewFeedback.aspx?FeedbackID=430609&SiteID=226
 
أرجو نشر هذه المعلومة لدى المنتديات الصديقة كي يقوموا بالتقييم والتحقيق أيضاً، وإن شاء الله نرى النتائج في إصدارات قادمة من XNA.

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

خبير مشرف مؤيد مارديني مشاركة 12

في 04 نيسان 2009 04:38 م، قال وسام البهنسي بهدوء وتؤدة:

هو يقوم بكلا المهمتين في الواقع. أولاً يكتب النص في صورة في الذاكرة باستخدام +GDI، ثم يحفظ الصورة على ملف مؤقت بصيغة PNG، فقط ليفتحها مرة أخرى باستخدام Xna ليضعها في إكساء.  بعد ذلك، أثناء عمل البرنامج، فإنه يقوم برسم هذا الإكساء فقط.

آه! في الحقيقة حسب شرح عمر فهمت فكرة مختلفة كلياً هي أن جميع الأحرف العربية مخزنة كصور PNG قام برسمها باستخدام برنامج رسم ليقوم باستدعاء ما يحتاجه منها وقت إظهار النص ثم صفّها أمام بعضها لتشكل النص الذي يريده، ولهذا أخبرته أن الكود الذي وضعه *لا* يقوم بهذا.

في 04 نيسان 2009 02:59 م، عقد عمر سمير حاجبيه بتفكير وقال:

اضفت الأحرف العربية عن طريق برنامج الرسم  Paint  

Moayad Mardini,
MSDN Forums Moderator

خبير مدير وسام البهنسي مشاركة 13

بتاريخ 04 ابريل 2009 08:28 م، قطب وسام البهنسي حاجبيه بشدة وهو يقول:

لذلك فقد قمت بتقديم طلب لدعم هذه الميزة عند مايكروسوفت. أرجو من جميع من يهمهم الأمر تقييم وتحقيق الطلب كي يأخذ أهمية أكبر:
 
https://connect.microsoft.com/feedback/ViewFeedback.aspx?FeedbackID=430609&SiteID=226

شكراً لجميع من شارك في الطلب. لقد تم الموافقة عليه وضمه إلى قائمة الطلبات التي يتابعها فريق XNA بنفسه. ندعو الله أن نرى هذه الميزة في XNA 4.0 ☺

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

مفصول عمر سمير  مشاركة 14

شكراً لك يا أخي وسام 
 
واشكر  جميع الأعضاء على التعاون المثمر  الذي ظهر في الآونة الأخيرة

OSF متخصص محترف

مبتدئ  عمّار حرفوش مشاركة 15

حتى تقوم مايكروسوفت بدعم العربية هذه الطريقة اللتي توصلت اليها ...
قمت بذكر نبذة عنها  هنا: http://forums.xna.com/forums/p/14680/76824.aspx

الطريقة سيئة و غير عملية لكنها تعمل الى حد ما...
يمكنكم مشاهدة النتيجة بالمرفقات

أولا عليكم تحميل البرنامج الأثري اللذي اسمه أبو رشيد (في المرفقات)

بعد التحميل قم بفك الضغط عنه و انسخ محتويات المجلد font الى مجلد الخطوط في نظام ويندوز
بعضهم سيكون معطوب لسبب مجهول ... لا بأس

في xna اضف sprite font جديد..
افتح الـ Notepad ادخل الى view ثم fonts ابحث عن أحد الخطوط اللتي تبدأ بـ ALW Cool
و انسخ اسمه كما هو و اصقه في خاصية FontName في الـ SpriteFont
و سبب هذه العملية أن أسامي الخطوط مكتوبة مع مسافات اضافية

الان شغل برنامج أبورشيد ...
1) اختر الخط
2) اكتب ما تريد
3) اضغط على الزر الأزرق FMC من ثم الزر اللذي يحوي علامة اللصق أو paste
الان سيتم نسخ نص الى الكليب بورد الصقه داخل برنامجك و جربه و على الأرجح سيعمل

هذه اسهل طريقة وجدتها لحل مشكلة اللغة العربية مؤقتا.

بالتوفيق 😋

خبير  أحمد عبد الغني مشاركة 16

همممم  😒
إذن أبو رشيد يقوم باختيار الرموز المناسبة بناءً على مكان الحرف في الكلمة. لا بأس على الإطلاق. مشكلته الوحيدة هي أنه يمنعك من استخدام خطوط أخرى غير تلك التي تأتي معه. أليس كذلك؟
 
كما قلت هو ليس بالحل الكامل، لأنك لن تستطيع توليد الكلمات برمجياً، إلا إن قمتَ بنقل خوارزمية عمل أبو رشيد إلى برنامجك، وهو أمر ليس بالسيء على الإطلاق. هل كود برنامج أبو رشيد متوافر بشكل مفتوح؟

اللهم انصر أهلنا في فلسطين وآجرنا أن نكون عوناً لهم

مبتدئ  عمّار حرفوش مشاركة 17

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

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

يمكنني اعادة كتابة كلاس للسي شارب, إن كان ذلك يهم أحد.

طبعا أنت ملزم باستعمال الخطوط هذه.

خبير مدير وسام البهنسي مشاركة 18

بتاريخ 23/شعبان/1430 03:45 م، قطب عمّار حرفوش حاجبيه بشدة وهو يقول:

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

حركة ذكية 😄

 

وفي 23/شعبان/1430 03:45 م، أعرب عمّار حرفوش عن رأيه بالموقف كالآتي:

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

يمكنني اعادة كتابة كلاس للسي شارب, إن كان ذلك يهم أحد.

الكلاس بحد ذاته سيكون ذا فائدة محدودة إن كانت الخطوط المتاحة محدودة. هل هناك أداة لتحويل خطوط TrueType لخطوط "أبو رشيد"؟

وسام البهنسي
مبرمج في إنفيديا وإنفريمز

مبتدئ  عمّار حرفوش مشاركة 19

في 15 اغسطس 2009 01:08 ص، عقد وسام البهنسي حاجبيه بتفكير وقال:

الكلاس بحد ذاته سيكون ذا فائدة محدودة إن كانت الخطوط المتاحة محدودة. هل هناك أداة لتحويل خطوط TrueType لخطوط "أبو رشيد"؟

ليس لدي معلومات عن هذه الخطوط أو من أين أتت, سواء تم رسمها خصيصا من الصفر لهذه المهمة أو انه تم تعديلها لتلائم المطلوب
أو انه هناك أداة لتحويلها

لكن ما أعرفه هو أنا الخطوط موضوعة بشكل يسهل العملية, حيث ان قمت باستخدام الخطوط...
حرف ا مثلا يقابله حرف h(صغيرة) في الكيبورد, و أ يقابله H(كبيرة)
و عـ يقابلها u(صغيرة) أما ع يقابلها U (كبيرة)
و  بـ   = f   و  ب = F
و هكذا ....
و المطلوب من الفنكشن أن تحدد ان كان الحرف يليه مسافة أم لا
ان كان يليه حرف اخر يستبدل بحرف صغير انجليزي بنفس مكانه في الكيبورد
اما ان كان يليه مسافة أو نقطة ... الخ, يتم استبداله بالحرف الانجليزي الكبير (مع شفت) اللذي يقابله بالكيبورد
ثم يتم قلب النص.
طبعا هناك بعض الاستثنائات كالدال و الراء و الزين .. الخ
حيث لا يتغير شكلهم.

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

و لم أجد حل أفض من هذا 🙁 ريثما تقوم مايكروسوفت بالعطف علينا و أعتقد ان هذا بعيد
حيث أنه لا نستطيع حتى شراء اشتراك XNA Creators Club Premium Membership
من هنا, مما حطم آمالي بتجربة اللعبة على الاكس بوكس 360 أو اصدارها على الاركيد

خبير مدير وسام البهنسي مشاركة 20

وفي 23/شعبان/1430 06:08 م، قال عمّار حرفوش متحمساً:

أقوم بالعمل على لعبة بلات فورم ثنائية الأبعاد, و ستكون بالعربية و الانجليزية.

سأكون سعيداً جداً لو أطلعتنا على أعمالك وإنجازاتك، ولو احتجت أية مساعدة فلا تتوانى عن طرح ما يواجهك من عقبات هنا في الشبكة 😄
 



وفي 23/شعبان/1430 06:08 م، ظهر شبح ابتسامة على وجه عمّار حرفوش وهو يقول:

لم أجد حل أفض من هذا 🙁 ريثما تقوم مايكروسوفت بالعطف علينا و أعتقد ان هذا بعيد

أشاركك هذا الاعتقاد 🙁  
 


أما في 23/شعبان/1430 06:08 م، فقد تنهد عمّار حرفوش بارتياح وهو يرد:

لا نستطيع حتى شراء اشتراك XNA Creators Club Premium Membership
من هنا, مما حطم آمالي بتجربة اللعبة على الاكس بوكس 360 أو اصدارها على الاركيد

لمَ لا تستطيع؟

وسام البهنسي
مبرمج في إنفيديا وإنفريمز