میرا خیال ہے کہ نستعلیق کی خوبصورتی کا تصور بغیر کشید کے ہو ہی نہیں سکتا لیکن کشید کو بھی اپنی درست حالت میں رکھنے کے لیے ہمیں کئی ابتدائی، میانی اور انتہائی اشکال کا اضافہ کرنا ہوگا مثلا اگر ہم:
"ح۔۔۔۔۔۔۔۔ا" لکھنا چاہتے ہیں تو اس کے لیے ح کی ایک ابتدائی شکل کا اضافہ ہو گا جو کچھ یوں ہوگی "ح۔۔۔۔۔ " اور الف کی ایک انتہائی شکل کا اضافہ کر نا ہوگا جو کچھ یوں ہوگی" ۔۔۔۔۔۔۔ا"
یہ بھی ممکن ہے کہ ہم ح کی ابتدائی شکل ح۔ اور الف کی انتہائی شکل ۔ا کے درمیان ایک کشید کا اضافہ کر دیں اسطرح ح۔ +۔۔۔۔۔۔۔ +۔ا لیکن ساید یہ کشید تمام حروف میں یکساں نہییں بیٹھے گی اور خوبصورتی بن نہیں پائے گی
اس سلسلہ میں ایک اور بات کہ اگر ہم کوئی ایسا سافٹ ویئر بنا رہے ہوں جو خطاطی کے لیے مخصوص ہو تو پھر تو کشید استعمال کرنا چاہیے اور اگر ہم ایک ایسا یونی کوڈ فونٹ بنا رہے ہوں جس کو کسی بھی ایڈیٹر میں استعمال کیا جا سکے تو پھر کشید سے اشکال میں اضافہ ہوگا اور یہ اضافہ فونٹ کی سرعت کو متاثر کرے گا۔
یہ بات قابل توجہ ہے کہ محسن حجازی صاحب نے پاک نستعلق میں یہ تیکنیک اپنائی ہے کہ کوبی بھی ابتدائی، میانی اور انتہائی شکل نقاط کے ساتھ نہیں بلکہ تمام اشکال بے نقطہ ہیں اور نقاط کو انہوں نے ایسے اعراب پر ایڈجسٹ کیا ہے جو بہت کم استعمال ہوتے ہیں اور ان نقاط کو ایک دوسرے کے اوپر چڑھنے سے بچانے اور ان کی درست جاگزینی کے لیے شاید ایم ایس وولٹ میں کام کیا گیا ہے اس ٹیکنیک کو استعمال کرنے سے حروف کی اشکال غیر معمولی طور پر کم ہو گئی ہیں جس سے پاک نستعلیق اب تک کے بنائے گئے تمام فونٹس میں سے زیادہ سریع اور سبک ہے
بہن مہوش علی اگر یہاں موجود ہوتیں تو وہ اس علمی اور تیکنیکی بحث میں مختلف سوالات اٹھا کر اس کو اور زیادہ مفید بنا دیتی کیونکہ میری معلومات کے مطابق انہوں نے وولٹ پر کافی حد تک ہاتھ سیدھا کر لیا ہے
یہ بات تو طے شدہ ہے کہ مزید حروف اور اشکال کا اضافہ فونٹ کی رفتار کو کم کرے گا اور یہ بات محسن حجازی اسی فورم پر کئی بار کہہ چکے ہیں میرے خیال میں تو محسن حجازی نے پاک نستعلیق میں جتنی اشکال وضع کی ہیں ان میں بھی زیادہ تو نہیں لیکن کسی حد تک کمی ضرور کی جا سکتی ہے
یا پھر ایک اور بات زہن میں آتی ہے کہ اگر فونٹ کی خوبصوتیی کو برقرار رکھنے کے لیے مزید اشکال ، حروف اور کشید کو شامل کرنا ناگزیر ہے ﴿جوکہ درست ہے﴾ تو پھر سافٹ ویئر اانجنیرز کو کوئی ایسا انجن لکھنا ہوگا جو کہ اس قسم کے بھاری بھرکم فونٹ کو کسی بھی ایڈیٹر کے ساتھ انتہائی سبک رفتاری سے چلا سکے اس کی مثال ایرانیوں کے بننائے ہوئے نستعلیق فونٹ کی ہے جو کہ ایم ایس ورڈ میں کام کرتا ہے اور نہایت سریع بھی ہے
جنابِ من شاکر صاحب اور اعجاز صاحب- بہت خوب، مجھے اندازہ تھا کہ آپ اس بارے میں درست اور بہترین اطلاعات رکھتے ہونگے۔ آپ کی مہیا کی ہوئی ان تفصیلات سے اب ذہن میں کچھ سوالات جنم لیتے ہیں۔
1۔ کشیدگی کے بارے میں:
اس وقت کیا ہم صرف معمولی سا حروف کو چوڑا کر سکتے ہیں؟ جس سے فونٹ تو خوبصورت رہے اور نقاط کے لئے مناسب گنجائش ہو؟ اس وقت ہمارا آبجیکٹیو ہے۔
"ایک ایسی نستعلیق فونٹ کی ٹیمپلیٹ کی تکمیل۔ جس میں ہم بہ آسانی تبدیلی کرکے نئی نستعلیق فونٹس بنا سکیں۔"
میر عماد کی طرح کا کشیدگی کا سسٹم ہم آئندہ کے لئے اٹھا رکھیں تو بہتر نہ ہوگا؟
OpenType فونٹ میں حروف کی اضافے سے رفتار کی کمی:
اس پر یہ عرض ہے اور اسکی تصدیق کسی ایسے شخص سے کرنا چاہتا ہوں جس نے کچھ اس بارے میں دوسرے فورمز پر پڑھا ہو یا جانتا ہو۔
تفصیلات و سوالات۔
تقریبا تمام فونٹس میں 256 حروف ہوتے ہیں- درست؟ اور یہ تمام فونٹس اچھی رفتار سے کام کرتے ہیں۔ انگریزی فونٹس کے Open Type ٹیبلز بہت چھوٹے ہوتے ہیں۔
کیا اگر ہم اعجاز صاحب کی بنائی ہوئی RANA.TTF کو جو کہ نستعلیق فونٹ نہیں ہے۔ اگر MSWORD میں استعمال کریں، تو اردو کے لفظ تو نہیں بنیں گے لیکن فونٹ ڈسپلے ہوگا۔ سوال یہ ہے کے اس فونٹ کی رفتار کیا کم ہوگی (بغیر نستعلیق کی سپورٹ کے)۔
میرا خیال ہے کہ جب تک اس فونٹ میں نستعلیق کی سپورٹ نہ ڈالی جائے یہ تیز رفتار ہی رہے گا۔ آپ دونوں حضرات نے بھی اسی بات کی طرف اشارہ کیا ہے۔ کہ اگر نستعلیق بنانے کی ٹیکنالوجی OpenType فونٹ میں نہیں ہوگی تو۔ایک جنرل پرپز نستعلیق رینڈرنگ انجن کی ضرورت ہوگی، جو نستعلیق آٹومیٹیکلی تمام اپلیکیشنز میں ڈسپلے کر سکے، اسی طرح جیسے صدف فار ونڈوز کرتا ہے، یا جیسے میر عماد کرتا ہے۔
کیا میں صحیح سمجھا ہوں؟
میرا خیال ہے کہ حروف کی تعداد سے رفتار میں کوئی خاص فرق نہیں پڑتا۔ یہ فرق Opentype کی نقطوں کی ہینڈلنگ اور شیپس کی ہینڈلنگ سے پڑتا ہے۔
اس نستعلیق فونٹ کے رفتار کے مسئلے کی تہہ تک پہنچتے ہیں۔
ذرا یہاں دیکھئے- یہاں OpenType فیچرز درج ہیں:
http://www.microsoft.com/typography/otfntdev/arabicot/features.htm
مزید یہ کہ لفظ "پیشکش" کئ امیج دیکھئے۔ نستعلیق کے ڈسپلے کے سٹیپس یہ ہیں۔
1۔ مناسب Econ شکل کا انتخاب۔
2۔ اس کی نقاط کی پلیسمینٹ، جو کہ OpenType-CCMP ٹیبل میں ہوتی ہے۔ دیکھیں اوپر دیے گئے ڈاکومینٹ میں CCMP ٹیبل۔
3۔ مناسب "ک" کے ME (Middle Shape for Econ) x کا انتخاب جس کے لئے، ہم کو OpenType- MEDI ٹیبل کی ضرورت ہوتی ہے۔ دیکھیں اوپر دیے گئے ڈاکومینٹ میں MEDI ٹیبل۔ اور مناسب شکل کہ صحیح کنکٹ ہو اس کے لئے OpenType-GPOS تیبل کی ضرورت۔
4۔ سٹیپ نمبر 3 سے منتخب شدہ ME شکل (حرف نہیں) کو مناسب طریقے سے کنکٹ کرنے کے لئے، Cursive Positioning ٹیبل، OpenType-CURS ٹیبل دیکھیں۔
5۔ سٹیپ نمبر 3 سے منتخب شدہ ME شیپ (حرف نہیں) کے نقطے لگانے کی لئے، اس کی نقاط کی پلیسمینٹ، جو کہ OpenType-CCMP ٹیبل میں ہوتی ہے۔ دیکھیں اوپر دیے گئے ڈاکومینٹ میں CCMP ٹیبل۔
پھر سٹیپ 3، 4، 5، ہر حرف (کیریکٹر، شیپ نہیں) کی لئے دہرایا جائے گا۔ درست؟
اس دوران میں ایک سٹیپ اور ہوگا۔ وہ ہے۔ للہ جیسے ترسیموں کی شناخت۔ اس کے لئے۔ Opentype-Mark ٹیبل میں تلاش۔ درست؟
کیا کسی فورم میں ان ٹیبلز کے بارے میں پہلے تذکرہ ہوا ہے؟ مطلع فرمائیں۔ تاکہ خیالات کو درستکے کا اندازہ ہو سکے۔
ہم دیکھ چکے ہیں کہ نستعلیق کے ٹیبلز رفتار میں کمی کا باعث بنتے ہیں۔
تو اب ہم دیکھتے ہیں کے اگر ہم نقاط اپنی فونٹ میں ہی ڈال دیں تو اسکی ضروریات کیا ہیں، اور اس سے کیا فائدہ ہوگا۔
خطِ رعنا کو پرنٹ کر کے دیکھیں۔ کیا یہ ہمارے Template والے مقصد کے قابلِ قبول ہے؟ اگر ہے تو۔ پھر ہم دیکھتے ہیں کے کل کتنی اشکال درکار ہونگی۔ خطِ رعنا میں 13 حروف ایسے ہیں جن کی ابتدائی اور انتہائی شکلیں ہیں۔ ان میں "ک"، "گ" ، "ل"، "م" "ہ" "ھ" کے نقطے نہیں ہوتے۔ تو بچے z 13 - 6 = 7 z حروف
اوران 7 حروف پر زیادہ سے زیادہ 6+4=10 نقطےہو سکتے ہیں، 6 نقاط اردو کے لئے اور 4 مزید نقاط دوسری زبانوں کے لئے۔ تو کل ممکنہ حروف ہوئے 7x10 = 70 حروف۔
ہر حرف کی 13۔ ابتدائی اور 13 درمیانی اشکال ہیں۔ کل 26 شیپس ہر حرف کے۔
گویا کل اضافی اشکال جن کے ہمیں ضرورت ہے z 70x26= 1820 z ۔
(نوٹ: پاک نستعلیق نے صرف 6 ابتدائی اور 6 درمیانی شیپس استعمال کئے ہیں۔
اگر کل شیپس جو ہمیں درکار ہیں 12 ہوں تو پھر ہمیں صرف z 70x12= 840 z 840 اشکال کی ہی ضرورت ہوگی۔
ہم یہ بھی کر سکتے ہیں کہ ایک مکمل فونٹ 1820 اضافی اشکال کا بنائیں۔ کہ ایک اچھا template ہو اور پھر اس میں سے 840 اشکال رہنے دیں اور OpenType ٹیبلز میں اشکال کی Mapping بدل دیں۔ اس طرح ہم 12، 14، 16 سے لے کر 26 تک ابتدائی اور درمیانی اشکال کے فونٹ بنا سکتے ہیں۔ اسکا یہ فائدہ ہوگا کہ کم از کم نقاط کا ٹیبل درکار نہ ہوگا۔ میرا خیال ہے کہ محسن صاحب اس طرف اشارہ فرما رہے ہونگے کہ زیادہ حروف سے نقاط ہینڈل کرنے کی زبردست مار پڑتی ہے اور پھر فونٹ کی رفتار کم ہوجاتی ہے۔ تو ہم کم از کم نقاط کی وجہ سے رفتار میں ہونے والی کمی کو دور کرسکتے ہیں۔
نوٹ ( میرے پاس ایک خط مزید خطِ ریما کے نام سے ہے، جو مل نہیں رہا ہے۔ اور میرا خیال ہے کہ ابتدائی اور درمیانی شیپس کم کرنے سے بہت سے خطوط ممکن ہے اپنی خوبصورتی کھو بیٹھیں ۔ اگر شاکر القدری شاحب اس معروضہ پہ مزید تنقید کرسکیں تو نوازش ہوگی)
چونکہ Unicode فونٹس اب 64000 اشکال تک ہوسکتی ہیں تو اضافی اشکال کا بنانا مشکل نہ ہوگا۔ اسکا ایک مزید فائدہ یہ نظر آتا ہے کہ فونٹ بنانے والا ہر شکل کے نقاط پر فونٹ ایڈیٹر میں ہی درست جگہ پر نقاط لگا سکے گا۔ اور اس سے پیدا ہونے والی ہر ممکنہ خوبصورتی پر مکمل کنٹرول رکھ سکے گا۔
اس بارے میں اپکی بیش بہا آراء اور تنقید بہت ہی ضروری ہے۔ انتظار رہے گا۔
نوٹ: دیکھئے پھلے دی ہوئی تھیوری سے کیا ہمارے نظریات اتنے اچھے ڈویلپ ہوگئے ہیں کی ان OpenType ٹیبلز کی آسان شناخت ہوسکے۔
والسلام،