7 يناير 2009

طرازات برامج قراءة الشاشة

تختلف طرازات برامج قراءة الشاشة حسب:


  • ما إذا كان نظام التشغيل الذي تعمل في بيئته يحمل لنا واجهة رسومية أو واجهة أمرية.

  • ما إذا كان تشغيلها يتم من خلال حاسب شخصي أو من خلال خادم للإنترنت.

  • ما إذا كانت مستقلة وتهدف لقراءة الشاشة فحسب أو ما إذا كانت مدرجة للعمل ضمن منظومة برمجية تسعى لمزيد من التوافقية (accessibility).

  • ما إذا كانت تجارية أو كانت مفتوحة المصدر.



أولا: ما إذا كان نظام التشغيل الذي تعمل في بيئته يحمل لنا واجهة رسومية أو واجهة أمرية.

كانت أنظمة التشغيل الحاسوبية المبكرة مثل نظام التشغيل دوس الذي أنتجته شركة مايكروسوفت تعرض للمستخدم شاشة سوداء تحتوي شاشتها على الأوامر أو الاستجابات الحاسوبية بشكل رتيب، على أن

مستخدمها كان حتم عليه معرفة الأوامر التي تؤدي له مراده من هذه الأنظمة مسبقا كما أن عليه التعامل مع الحاسوب من خلال لوحة المفاتيح التي قد تصيب مستخدمها بالرهبة للوهلة الأولى خاصة إن كان

المتعامل مع الحاسوب من غير المتخصصين في مجالات علوم الحاسب، ويسمى هذا النوع من واجهات أنظمة التشغيل بالواجهة الأمرية وهي تلك الواجهة التي يبدو من ظاهرها الغموض في كيفية التعامل

مع الحاسب. والخلاصة أن هذا النوع من الواجهات كان له طابع خاص وكان من اليسير تصميم برامج قارئة للشاشة للتعامل معه وإن كان التعامل مع بعض البرامج التي تشملها هذه الأنظمة أمر شبه

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

الإنجليزية مع انتشار برامج أخرى بسيطة مثل برنامج القراءة الآلية للشاشة (Automatic Screen Access Program, ASAP) وغيرها.

وتقف الأنظمة ذات الواجهات الرسومية (graphical user interfaces) في مقابلة سالفتها من الواجهات الأمرية، فهي تعتمد على الأيقونات لعرض

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

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

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

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

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

عرض قد يكون مفصل لكيفية التعامل مع كائن بعينه، فعلى سبيل المثال: عندما يقف مؤشر النظام في ويندوز إكسبي على شكل الزر المكتوب عليه (start) يقوم برنامج الجاوز، وهو

أحد برامج قراءة الشاشة التجارية مع ويندوز إكسبي، بنطق ما يلي نصه، "start button, to activate press space bar" أي أنه

لم ينطق كلمة (start) فحسب وإنما أقر بكون الكائن المكتوبة عليه الكلمة من نوع "زر" ولتنشيطه يلزم "الضغط على شريط المسافة" من لوحة المفاتيح. ويذكر أن برامج

قراءة الشاشة العاملة مع نظام ويندوز كثيرة ومنها: جاوز وهال وويندو أييز وثاندر وKVDA مفتوح المصدر (غير التجاري) وغيرها الكثير من أنظمة التشغيل المذكورة في مقالات سابقة

حسب نظام التشغيل العامل.

وفي هذا السياق يجدر بنا أن نشير إلى التقنيات الواعدة التي تلبي مطالب برامج قراءة الشاشة من أجل الحفاظ على الدقة والكفاءة في الاستخدام في آن واحد، فبرامج قراءة الشاشة تعتمد على استقاء

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

شاشة الحاسب وهو ما يسمى بنمط "الشاشة غير العاملة" أو (off-screen model) الذي يلجأ للشفرات الخاصة بنظام التشغيل لمعرفة النصوص المعروضة على

شاشة الجهاز ومن ثم عدم حتمية وجود شاشة عرض فعلية أثناء تشغيل مثل هذه البرامج. ومع ذلك، لم يقف مطورو أنظمة التشغيل والعاملين في هذا الحقل عند هذا الحد من التعامل مع المحتوى

الرسومي على الشاشة وإنما أعدوا منظومات برمجية يمكن لمصممي البرامج قارئة الشاشة الاستعانة بها في استقاء المعلومات المطلوبة عن الشاشة وإعدادها للنطق أو التعامل الآلي، ومن هذه الحلول

والمنظومات البرمجية:


  • Apple Accessibility API.

  • AT-SPI

  • IAccessible2,

  • Microsoft Active Accessibility (MSAA)

  • Microsoft UI Automation

  • Java Access Bridge



وهكذا لا تقف برامج قراءة الشاشة عند مجرد نطق شاشات برامج معالجة النصوص أو التعامل مع الإنترنت وإنما يمكنها كذلك التعامل مع تطبيقات متنوعة تشمل برامج قواعد البيانات وبرامج التحليل

الإحصائي وبرامج المعالجة الصوتية وبرامج وبيئات لغات البرمجة وتحليل النظم وغيرها، وتبقى التحديات الخاصة بقراءة شاشات التطبيقات المختلفة مرهونة بطبيعة هذه البرامج من جهة وبمدى لزومها

للمعايير التوافقية من جهة أخرى، فعلى الرغم من صعوبة إدراك البرامج القارئة للشاشة لمحتوى برنامج فوتوشوب (photo shop) المصمم خصيصا للرسم ومعالجة الصور إلا أن

هذه البرامج قد تنطق قوائم البرنامج المذكور نظرا لتوافقية البنية الخاصة بقوائمه، وبالعكس فإن هذه البرامج التي تقرأ الشاشة قد لا تتمكن من قراءة محتوى برنامج (talk-it) على رغم

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

المعايير التوافقية كذلك.

ثانيا: ما إذا كان تشغيلها يتم من خلال حاسب شخصي أو من خلال خادم للإنترنت.

لم يكتفي خيال مصممو برامج قراءة الشاشة بتصميم برامج تقرأ شاشات الحاسبات الشخصية وتقرأ شاشات متصفحات الإنترنت وإنما سعوا من أجل تطوير برامج تتيح خدمة قراءة مواقع الإنترنت ذاتيا بغير

حاجة لتثبيت برامج على الحاسبات الشخصية من أجل قراءة الشاشة بالصوت. وبالفعل نجحت عدة محاولات منها محاولة شركة (textic) في بناء برنامج يمكن تثبيته على خوادم

الإنترنت أو تضمينها فيه من أجل إتاحة الفرصة لزوار المواقع تصفح المواقع التي تم تضمين الحل الصوتي فيها بالصوت من خلال قراءة الشاشة وكأن هناك برنامج لقراءة الشاشة مثبت بالفعل على

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

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

وفي هذا الصدد يجدر بنا أن نعترف بدور تكنولوجيا المعلومات في بناء جسور التواصل والمعرفة بين كافة البشر بصرف النظر عن لغاتهم أو جنسياتهم أو ألوانهم أو حتى ظروفهم البدنية والصحية، فليس من

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

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

ثالثا: ما إذا كانت مستقلة وتهدف لقراءة الشاشة فحسب أو ما إذا كانت مدرجة للعمل ضمن منظومة برمجية تسعى لمزيد من التوافقية

(accessibility).


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

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

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

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

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

تطوير برامج قراءة الشاشة لزوم خفض أسعار منتجاتها وبناء استراتيجيات جديدة للعمل من أجل تحقيق المساواة التقنية ما بين البشر.

رابعا: ما إذا كانت تجارية أو كانت مفتوحة المصدر.

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

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

تجاريا أو مجانيا لعدة عوامل تتمثل في أهداف الشركة المنتجة له ونظام التشغيل العامل معه على حد سواء. فأنظمة يونيكس ولينوكس وغيرها من الأنظمة المنافسة تتبع سياسة البرمجيات مفتوحة

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

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

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

لكل عارف بالبرمجة. ومع ذلك نجد أن بعض برامج قراءة الشاشة التي تدعم النظام التجاري ويندوز بدأ في بناء استراتيجيات لتصميم برامج مفتوحة المصدر للعمل مع ويندوز كذلك.

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