سوالف اندرويد




العودة   سوالف سوفت > سوالف برمجة المواقع وتطويرها > PHP
التسجيل المدوّنات البحث مشاركات اليوم جعل الأقسام مقروءة

الرد على الموضوع
 
LinkBack أدوات الموضوع
عضو نشيط
#1  
مشكلة تغيير اتجاه النصوص الأجنبية التي تكتب من اليسار إلى اليمين

السلام عليكم ...
أواجه مشكلة تغيير اتجاه النصوص الأجنبية التي تكتب من اليسار إلى اليمين داخل الفقرات العربية والتي تكتب من اليمين إلى اليسار .

مثلا :
انا محمد وهو mohammed !

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

أحاول برمجة دالة ( function ) لحل هذه المشكلة ... ما هي أفكاركم ؟







آخر تعديل بواسطة MaJoOoDy في 27-11-2011 الساعة 02:30 PM.
MaJoOoDy is offline   قديم 27-11-2011, 02:28 PM
الرد مع إقتباس
مشرف قسم PHP
#2  

ما رأيك لو قمنا بتقسيم النص كاملاً إلى جمل أولاً تبعاً إلى لغة كل جملة؟

لكن السؤال الأهم، في مثالك في الأعلى، كيف للكود أن يتعرف على أن علامة التعجب هذه مرتبطة بالجملة الإنجليزية وليس العربية؟ ربما لأن الكلام الذي سبقها جميعه بالإنجليزية؟

شاركنا بأفكارك وأنا مستعد للمساعدة بالأفكار والكود إن شاء الله تعالى .

تحياتي، أشرف السمهوري






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 10-12-2011, 08:56 AM
الرد مع إقتباس
مشرف قسم PHP
#3  

بالمناسبة، تم تثبيت الموضوع - أرى أن هناك فائدة كبيرة قد تكون داخل محتوى الموضوع إن تابعت البحث والنقاش يا MaJoOoDy .






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 10-12-2011, 08:59 AM
الرد مع إقتباس
عضو نشيط جدا
#4  

هذه الدالة تعمل بشكل جيد في الفيس بوك

على العموم هذه بداية متواضعة

كود PHP:
$string='إسماعيل !';
if(
preg_match("/\p{Arabic}/u"$string)) echo "<span dir='rtl'>$string</span>";
else echo 
$string






مستر سمعة is offline   قديم 12-12-2011, 09:41 PM
الرد مع إقتباس
عضو نشيط
#5  

حسنا سأبدأ منذ الآن بتركيز البحث على هذه النقطة و سأعود بالمفيد إن شاء الله ...

بدايتي ستكون مع طريقة تقديم الصفحة التي ستحتوي على الكلام من ناحية أهي ( html ) أم ( text/html ) أم ( application/xhtml+xml' ) ..






MaJoOoDy is offline   قديم 13-12-2011, 07:50 AM
الرد مع إقتباس
مشرف قسم PHP
#6  

هل الدالة التي كتبتها تكفي برأيك؟






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 13-12-2011, 03:29 PM
الرد مع إقتباس
عضو نشيط
#7  

إقتباس:
المشاركة الأصلية بواسطة أشرف السمهوري مشاهدة مشاركة
هل الدالة التي كتبتها تكفي برأيك؟
أي دالة يا أشرف .... !!!

قصدي ، أنا طريقة تحميل أو كتابة الصفحة ستكون أول مسار سأبحث عنه في هذه المشكلة ، ثم بعد ذلك اختبار النص ، وتحديد الإتجاه المبدئي للنصوص في الصفحة من حيث اللغة أو خاصية ( dir=" ---" ) ، ويتبع لذلك تحديد الإتجاه المعاكس للنصوص التي تحتاج لذلك .
هذا هو المسار الذي سأتبعه وأبحث فيه لحل هذه المشكلة ...

# سأتغيب لأيام نظرا لإنشغالي بعدة أشياء في الوقت الحاضر ،،، ولكن العمل على هذه الفكرة متقدم بنسبة 30 % الآن ...


اتمنى مشاركة الجميع معنا ، كما قال أشرف فالفائدة ستعم للجميع إن شاء الله ...







آخر تعديل بواسطة MaJoOoDy في 14-12-2011 الساعة 12:34 PM.
MaJoOoDy is offline   قديم 14-12-2011, 12:13 PM
الرد مع إقتباس
مشرف قسم PHP
#8  

أقصد المبدأ الذي قمت بكتابته في الأعلى. يمكننا اكتشاف Detect الحروف العربية عن طريق المدى Range التالي على هيئة UTF-8 :
كود:
\x{0600}-\x{06ff}
سيكون مفيداً جداً كي نحدد الحروف العربية من غيرها .






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 14-12-2011, 01:12 PM
الرد مع إقتباس
عضو نشيط
#9  

حسنا .. ربما هي خطوة مفيدة في اكتشاف العربية بالذات ... ولكن الفكرة ( أو المشكلة ) تكمن في تحديد اللغة الأخرى ذات الإتجاه من اليسار إلى اليمين ، سواء كانت الإنجليزية أو الفرنسية أو غيرها ,,,

على العموم أراك تسبقني بخطوة ... ولكن كما قلت الأيام القادمة سأكون مشغولا ،،، ولكن أنا لها ^_^






MaJoOoDy is offline   قديم 14-12-2011, 09:26 PM
الرد مع إقتباس
عضو نشيط
#10  

و عليكم السلام و رحمة الله و بركاته

كتبت دالة على السريع و أتمنى تشتغل معاك

كود PHP:
function AutoAlignment($string) {
    
$alignedString "";
    
$span false;
    
    
$words preg_split("/[\s]+/"$string);
    
    for (
$count 0$count count($words); $count++) {
        
        if ( 
preg_match("/\p{Latin}/u",$words[$count]) ) {
            
$append = ($span) ? " " " <span dir='ltr'>";
            
$alignedString .= $append $words[$count];
            
$span true;
        }
        else {
            if ( 
$span ) {
                
$alignedString .= "</span>";
                
$span false;
            }
            
$alignedString .= " " $words[$count];
        }
    }
    return (
$span) ? $alignedString."</span>" $alignedString;

طريقة عملها باختصار:
  • تقوم بتقسيم الجمل إلى عناصر مصفوفة. كل عنصر عبارة عن كلمة
  • المرور على كلمة كلمة، و إذا كانت الكلمة مكتوبة بلغة لاتينية، تقوم الدالة بإلحاق span dir=ltr قبل الكلمة
  • و إذا انتهى تسلسل الكلمات اللاتينية (يمكن تكون جملة أو كلمة)، تقوم الدالة بإغلاق الـ span
  • بالنسبة للعلامات، فهي دائما تلحق ما قبلها. يعني لازم تكون مربوطة بالكلمة اللي قبلها. و هذه من شروط أي لغة

مدخلات الدالة: الـ string اللي فيه الجملة اللي تبغى تضبطها
يعني "انا محمد وهو mohammed !"

أتوقع بتشتغل معاك مع الفرنسي لأنه الفرنسي برضه لاتيني و لا :P؟؟ ترا ما أعرف

هذه بشكل سريع لأني ما نمت إلا ساعتين أصحصحلك و أعدلها، فيه كلام مكرر و يبغاله تحسين

على فكرة: طريقة عمل الدالة مقتبسة من اللي قريته من ردود الموضوع من أشرف و مستر سمعة

رائد






__________________
"اقْــرَأ "
اللهم ارزقنا حسن الختام

آخر تعديل بواسطة Cenrak في 17-12-2011 الساعة 07:16 AM.
Cenrak is offline   قديم 17-12-2011, 07:10 AM
الرد مع إقتباس
مشرف قسم PHP
#11  

كم أنت رائع يا Cenrak !

هل هناك مشاكل أخرى، هل تعتقدون عند وجود مسافة بين الكلام والرمز أن الرمز لا يتبع للغة السابقة له؟

يعطيك العافية . أتوقع رح أطبّق هذي الدالة بعد تشييكها في "ساحات" بما إنّا نعاني من هالمشكلة داخل المحادثة !

تحياتي، أشرف السمهوري






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 18-12-2011, 08:15 PM
الرد مع إقتباس
عضو سوبر نشيط
#12  

شوف مكتبة php واللغة العربية للاخ خالد

بتفيدك بكثييير امور وهي الحل حسب ظني ؛






__________________
زورونا في موقع الحياة للنقاشات والأسئلة والأجوبة :
- php >> وهو لحل مشاكل php وما حولها
- Ideas >> وهو لعرض الأفكار وتقييمها وايضا لمناقشة الأفكار
عبدالله أبولبن is offline   قديم 27-12-2011, 12:32 PM
الرد مع إقتباس
مشرف قسم PHP
#13  

عبدالله، عن أي جزئية من المكتبة تتحدث؟ هل لديك أية اقتراحات معينة؟






__________________
# اتبعني على Twitter
أشرف السمهوري is offline   قديم 29-12-2011, 01:58 PM
الرد مع إقتباس
عضو سوبر نشيط
#14  

http://www.ar-php.org/ar-example-Sta...hp-arabic.html

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

تحياتي لك واسف قد اكون مخطأ






__________________
زورونا في موقع الحياة للنقاشات والأسئلة والأجوبة :
- php >> وهو لحل مشاكل php وما حولها
- Ideas >> وهو لعرض الأفكار وتقييمها وايضا لمناقشة الأفكار
عبدالله أبولبن is offline   قديم 29-12-2011, 10:25 PM
الرد مع إقتباس
مشرف قسم PHP
#15  

رائع !

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

شكراً عبدالله .

تحياتي، أشرف السمهوري






__________________
# اتبعني على Twitter

آخر تعديل بواسطة أشرف السمهوري في 30-12-2011 الساعة 01:09 AM.
أشرف السمهوري is offline   قديم 30-12-2011, 01:08 AM
الرد مع إقتباس
عضو فعال
#16  

إقتباس:
المشاركة الأصلية بواسطة أشرف السمهوري مشاهدة مشاركة
أقصد المبدأ الذي قمت بكتابته في الأعلى. يمكننا اكتشاف Detect الحروف العربية عن طريق المدى Range التالي على هيئة UTF-8 :
كود:
\x{0600}-\x{06ff}
سيكون مفيداً جداً كي نحدد الحروف العربية من غيرها .
لزيادة المعلومات في الموضوع
وهذا درس يشرح كيفية تحويل اتجاة الكتابة تلقائيا عند الكتابة في النماذج بالجافا سكربت بنفس طريقتك بال unicode
http://www.almashroo.com/1810/%D8%AA...4%D8%BA%D8%A9/






__________________
قال صلى الله عليه وسلم : كلمتان خفيفتان على اللسان ثقيلتان في الميزان (سبحان الله وبحمده ** سبحان الله العظيم)

آخر تعديل بواسطة hussein.shy في 30-12-2011 الساعة 10:48 AM.
hussein.shy is offline   قديم 30-12-2011, 10:47 AM
الرد مع إقتباس
عضو نشيط جدا
#17  

الأخ العزيز MaJoOoDy إن كنت مهتما بالناحية البرمجية والخوارزمية حينها أظن أن الصديق العزيز عبد الله أبو اللبن قد أشار إلى تابع مختلف لايتعلق بالمشكلة التي أشرت إليها، أغلب الظن أنك تحتاج إلى إجراء معالجة قريبة مما قمت به عند معالجة النصوص قبل تمريرها إلى مكتبات GD أو PDF أو SWF الخ والتي تعاني تحديدا من هذه المشكلة.

في هذه الحالة أدعوك إلى إلقاء نظرة على التابع المسمى preConvert والموجود ضمن الملف ArGlyphs.class.php ضمن مجلد sub في مكتبة PHP واللغة العربية، حيث ستجد مرادك بإسهاب مشبع إن شاء الله (إن لم تكن مطلعا على هذه المكتبة بعد يمكنك زيارة الموقع الرسمي لها على الرابط التالي: http://www.ar-php.org)

أخجلتني بإطرائك أخي الكريم أشرف، أرجو أن نجتمع شخصيا في يوم من الأيام على الخير إن شاء الله، وأتمنى من كل جوارحي أن أكون أهلا لهذا الإطراء.






__________________
خالد الشمعة - Khaled Al-Shamaa
PHP and Arabic language
DNSerror is offline   قديم 18-01-2012, 02:32 PM
الرد مع إقتباس
عضو نشيط
#18  

DNSerror ...
لك كل التحية ،،
أتابع عن كثب تقدم المكتبة ، ولكن منقطع منذ فترة عن الإنترنت ، كما اني متوقف عن البرمجة منذ فترة طويلة ..

ولكني أعود تدريجيا ،، أحمد الله على وجود امثالكم ،، في هذا المجتمع ...

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


كنت بدأت في كتابة الكود الخاص بخاصية التحويل ، منذ فترة ولم أتمكن حتى من إختباره ، كما ان تواجدي في دولة اخرى قلص من الوقت الذي كنت اجده للتفرغ لمثل هذه الأشياء ..

سأبدأ بإضافة ( زر إختصار shortcode ) لهذه الخاصية لمحرر الــwordpress ، كما لدي فكرة لإضافتها إلى الإضافة ( Ar PHP )....!!






MaJoOoDy is offline   قديم 20-01-2012, 06:16 PM
الرد مع إقتباس
الرد على الموضوع



أدوات الموضوع

قوانين المشاركات
لا يمكنك كتابة مواضيع جديدة
لا يمكنك إضافة ردود
لا يمكنك إرسال مرفقات
لا يمكنك تعديل مشاركاتك

كود vB متاح
كود [IMG] متاح
كود HTML غير متاح
Trackbacks are متاح
Pingbacks are متاح
Refbacks are متاح


المواضيع المشابهه
الموضوع كاتب الموضوع القسم الردود آخر مشاركة
تحويل اتجاه التصميم من اليسار الي اليمين والعكس عند الضغط علي زر تغير اللغه mark_cool5 البرمجية القياسية Ajax +XML+ CSS+ JavaScript وغيرها 1 06-09-2011 04:38 PM
محاذاة الارقام من اليمين الى اليسار بدلا من اليسار الى اليمين exchangeboss البرمجية القياسية Ajax +XML+ CSS+ JavaScript وغيرها 6 10-06-2009 04:17 AM
قلب اتجاه التصفح من اليمين الى اليسار !!؟ - عملية التعريب - KAD PHP 2 24-01-2006 02:21 AM
تغيير الكلام من اليسار الى اليمين بحريننا الإصلاح والصيانة 1 04-01-2004 12:44 PM
كيف أجعل اتجاه الرسائل التي ترسل للأعضاء من اليمين لليسار sagaf الإصلاح والصيانة 1 01-02-2002 04:18 PM


جميع الأوقات بتوقيت غرينتش +3. الوقت الآن هو 10:18 PM.