نستعلیق فونٹ میں کرننگ پر تحقیق

نعیم سعید

محفلین
یہ تو بہت اچھی خبر ہے کہ ’ان پیج‘ کی خوبیوں کو ’ورڈ‘ میں شامل کرنے کی کوشش کی جا رہی ہے۔
تجاویز تو بہت سی دی جا سکتی ہیں، مگر کیونکہ سب سے بڑے مسئلہ ’’کرننگ‘‘ کا ذکر چھڑ گیا ہے۔ اس لیے ابھی میں صرف اس ہی سے متعلق اپنی رائے دوں گا کیونکہ کئی اردو فونٹس کی تیاری کے باوجود ’کرننگ‘ کا مسئلہ ابھی تک ایک مسئلہ ہی ہے۔ یعنی بھرپور تو کیا ’ان پیج‘ جیسی کرننگ بھی کسی فونٹ میں شامل نہیں کی جاسکی۔
دوست بھائی کی بات درست ہے کہ ’کرننگ‘ فونٹ کی پراپرٹی ہوتی ہے۔ مگر لگیچر بیسڈ فونٹس میں جہاں ہزاروں کی تعداد میں لگیچرز شامل ہوں، وہاں بے تحاشہ کرننگ پیئرز بنانے کی ضرورت ہوتی ہے، اور اس کے لیے جو ٹولز (ایم ایس وولٹ، وغیرہ) مہیا ہیں ان میں یہ کام اتنا مشکل ہے کہ آج تک کوئی بھرپور کرننگ شامل کرنے میں کامیاب نہیں ہوسکا۔
یہی وجہ ہے کہ ’کرننگ‘ جیسے مسئلہ کو قابو کرنے کے لیے فونٹس کے اندر محنت کرنے کی بجائے پروگرام یا ٹولز بنانے پر توجہ دی گئی۔
کچھ عرصہ پہلے ’میرعماد‘ اسی ضرورت کو سامنے رکھتے ہوئے تیار کیا گیا تھا اور اب مشورہ زمانہ کیلی گرافک سافٹ ویئر ’کلک‘ بنانے والی کمپنی نے ایک پروگرام ’گارسہ‘ کے نام سے بنایا ہے۔ جو ’ورڈ ‘۲۰۰۳ کے اندر ہی چلتا ہے۔ میری رائے میں یہ اس وقت فونٹس کو ہینڈل کرنے کے لیے بہترین پروگرام ہے۔
’گارسہ‘ پروگرام کے انتہائی جاندار فیچرز کا اندازہ ان وڈیوز کو دیکھ کر لگایا جاسکتا ہے۔
لنک
متلاشی بھائی! ذرا ایک قدم اور آگے بڑھا لیں ’ان پیج‘ کے ساتھ ساتھ ’گارسہ‘ کے فیچرز کو بھی دیکھیں۔ خاص طور پر ’کرننگ‘ کے مسئلہ کے حل کے لیے۔
بہتر سمجھیں تو ’ورڈ ‘ سے کرننگ کیسے سیٹ کی گئی ہے، اس کا طریقہ بھی بتا دیں۔ جس کا نمونہ آپ نے اوپر لگایا ہے۔
اور اس نمونہ پر بھی اپنی رائے دیں، کرننگ کیسی لگ رہی ہے؟
Image_12.JPG
 

شاکرالقادری

لائبریرین
نعیم سعید یہاں تو بہت خوبصورت کرننگ نظر آرہی ہے
اس کا مطلب یہ ہے کہ آپ نے کرننگ پر خاصا کام کر لیا ہے
مبارک ہو
 

متلاشی

محفلین
یہ تو بہت اچھی خبر ہے کہ ’ان پیج‘ کی خوبیوں کو ’ورڈ‘ میں شامل کرنے کی کوشش کی جا رہی ہے۔
تجاویز تو بہت سی دی جا سکتی ہیں، مگر کیونکہ سب سے بڑے مسئلہ ’’کرننگ‘‘ کا ذکر چھڑ گیا ہے۔ اس لیے ابھی میں صرف اس ہی سے متعلق اپنی رائے دوں گا کیونکہ کئی اردو فونٹس کی تیاری کے باوجود ’کرننگ‘ کا مسئلہ ابھی تک ایک مسئلہ ہی ہے۔ یعنی بھرپور تو کیا ’ان پیج‘ جیسی کرننگ بھی کسی فونٹ میں شامل نہیں کی جاسکی۔
دوست بھائی کی بات درست ہے کہ ’کرننگ‘ فونٹ کی پراپرٹی ہوتی ہے۔ مگر لگیچر بیسڈ فونٹس میں جہاں ہزاروں کی تعداد میں لگیچرز شامل ہوں، وہاں بے تحاشہ کرننگ پیئرز بنانے کی ضرورت ہوتی ہے، اور اس کے لیے جو ٹولز (ایم ایس وولٹ، وغیرہ) مہیا ہیں ان میں یہ کام اتنا مشکل ہے کہ آج تک کوئی بھرپور کرننگ شامل کرنے میں کامیاب نہیں ہوسکا۔
یہی وجہ ہے کہ ’کرننگ‘ جیسے مسئلہ کو قابو کرنے کے لیے فونٹس کے اندر محنت کرنے کی بجائے پروگرام یا ٹولز بنانے پر توجہ دی گئی۔
کچھ عرصہ پہلے ’میرعماد‘ اسی ضرورت کو سامنے رکھتے ہوئے تیار کیا گیا تھا اور اب مشورہ زمانہ کیلی گرافک سافٹ ویئر ’کلک‘ بنانے والی کمپنی نے ایک پروگرام ’گارسہ‘ کے نام سے بنایا ہے۔ جو ’ورڈ ‘۲۰۰۳ کے اندر ہی چلتا ہے۔ میری رائے میں یہ اس وقت فونٹس کو ہینڈل کرنے کے لیے بہترین پروگرام ہے۔
’گارسہ‘ پروگرام کے انتہائی جاندار فیچرز کا اندازہ ان وڈیوز کو دیکھ کر لگایا جاسکتا ہے۔
لنک
متلاشی بھائی! ذرا ایک قدم اور آگے بڑھا لیں ’ان پیج‘ کے ساتھ ساتھ ’گارسہ‘ کے فیچرز کو بھی دیکھیں۔ خاص طور پر ’کرننگ‘ کے مسئلہ کے حل کے لیے۔
بہتر سمجھیں تو ’ورڈ ‘ سے کرننگ کیسے سیٹ کی گئی ہے، اس کا طریقہ بھی بتا دیں۔ جس کا نمونہ آپ نے اوپر لگایا ہے۔
اور اس نمونہ پر بھی اپنی رائے دیں، کرننگ کیسی لگ رہی ہے؟
Image_12.JPG
شکریہ نعیم بھائی یہاں تو کرننگ زبردست لگ رہی ہے ۔۔۔! میں نے تو مینولی ہی ورڈ میں کوئی سا بھی کرننگ پیئر لے کر ان کی کریکٹرسپیسنگ کو کم کردیاہے ۔۔۔ اور تو کچھ نہیں کیا اگر سارے کرننگ پیئرز مل جائیں تو وی بی کی مدد سے ورڈ کی حد تک آٹو کرننگ اسی طرح سیٹ کی جاسکتی ہے ۔۔۔!
آپ نے کرننگ کیسے سیٹ کی ہے ۔۔۔ اوپر والے نمونہ میں ۔۔۔؟
 

نعیم سعید

محفلین
جی شاکر القادری صاحب تھوڑا بہت کام تو ہوا تھا۔ پھر تھکا دینے والی طویل محنت کے خوف اور دیگر مصروفیات نے سست کر دیا۔ تا حال آگے نہیں بڑھا سکا۔
سچ بتاؤں تو جیسی ’کرننگ‘ میں فونٹ میں شامل کرنا چاہتا تھا، ’وولٹ‘ میں اس کی صلاحیت ہی نہیں ہے۔ اور جو ہے اس کا طریقہ بہت مشکل اور پیچیدہ ہے۔
کچھ عرصہ قبل اس موضوع پر ایک تھریڈ بھی شروع کیا تھا۔ مگر بات آگے نہ بڑھ سکی ……
آج کل تو ’کرننگ‘ کے لیے کسی آسان اور بہترین سپوٹ کے مہیا ہونے کے وظیفے ہی پڑھتا رہتا ہوں، کیا پتہ متلاشی بھائی کے اس دھاگے کے ذریعہ کوئی بہترین متبادل صورت بھی پیدا ہوجائے۔
 

نعیم سعید

محفلین
نمونہ میں جو کرننگ نظر آرہی ہے وہ فونٹ میں ایم ایس وولٹ کے ذریعہ شامل کی گئی ہے۔
جو نمونہ اور طریقہ آپ نے بتایا ہے وی بی کے ذریعہ کرننگ سیٹ کرنے کا۔ اسے ذرا تفصیل سے بیان کریں اور یہ بھی بتائیں کس حد تک جاندار ہے یہ طریقہ، مطلب اس میں مسائل کیا کیا آنا ممکن ہیں، اور کس حد تک کنٹرول شامل کیے جا سکتے ہیں۔
کرننگ پیئرز کی لسٹیں مہیا کرنا میرا کام ہے ، اس کی فکرنہ کریں۔
 

شاکرالقادری

لائبریرین
جی شاکر القادری صاحب تھوڑا بہت کام تو ہوا تھا۔ پھر تھکا دینے والی طویل محنت کے خوف اور دیگر مصروفیات نے سست کر دیا۔ تا حال آگے نہیں بڑھا سکا۔
سچ بتاؤں تو جیسی ’کرننگ‘ میں فونٹ میں شامل کرنا چاہتا تھا، ’وولٹ‘ میں اس کی صلاحیت ہی نہیں ہے۔ اور جو ہے اس کا طریقہ بہت مشکل اور پیچیدہ ہے۔
کچھ عرصہ قبل اس موضوع پر ایک تھریڈ بھی شروع کیا تھا۔ مگر بات آگے نہ بڑھ سکی ……
آج کل تو ’کرننگ‘ کے لیے کسی آسان اور بہترین سپوٹ کے مہیا ہونے کے وظیفے ہی پڑھتا رہتا ہوں، کیا پتہ متلاشی بھائی کے اس دھاگے کے ذریعہ کوئی بہترین متبادل صورت بھی پیدا ہوجائے۔
نعیم بھائی! جسے آپ تھوڑا بہت کہہ رہے ہیں یہ تھوڑا بھی بہت ہے ۔۔ نتائج بہت اچھے ہیں
ممکن ہے کہ ایم ایس ورڈ میں اس کا کوئی مستقل حل نکل آئے یا متلاشی جو طریقہ بتا رہے ہیں یہی قابل عمل ہو جائے
لیکن میرا خیال ہے کہ علوی، جمیل دونوں فانش کے گلفس کے بیرنگز کو کنٹرول کر کے کرننگ کے فیچر کو شامل کیے بغیر بھی زیادہ نہ سہی کسی حد تک ضرور کنٹرول کیا جا سکتا ہے
کرننگ کے پیئرز کا میں بھی امید وار ہوں اگر عنایت فرمائیں تو شکر گزار ہونگا
 

نعیم سعید

محفلین
شاکر بھائی! آپ نے درست فرمایا، بیرنگز اور نقطوں کو سیٹ کرنے سے بھی فونٹ میں تھوڑی بہت خوبصورتی لائی جا سکتی ہے اور میں نے جمیل فونٹ میں اس اعتبار سے کافی کام کیا بھی تھا۔ مگر یہ طریقہ کرننگ کا متبادل نہیں ہوسكتا، بس گزارا کیا جا سکتا ہے۔ کیونکہ بیرنگز کی تبدیلی تو مستقل طور ہی لگیچر کی جگہ تبدیل کر دیتی ہے یہ دیکھے بغیر کہ لگیچر کے آگے پیچھے کیا آرہا ہے۔ ہاں اتنا ضرور ہے کہ بہترین کرننگ سیٹ کرنے میں بیرنگز کا مناسب سیٹ ہونا بڑی مدد دیتا ہے۔
نئے الفاظ کی تلاش کا عمل کام کے دوران چلتا رہتا ہے، تلاش کیے گئے نئے الفاظ کو بھی شامل کر کے جلد ہی ’کرننگ پیئرز‘ کی لسٹیں مہیا کرتا ہوں۔
 

نعیم سعید

محفلین
جب بات فونٹ میں ’کرننگ‘ کی سہولت شامل کرنے کی جانب چل نکلی ہے تو ضروری سمجھتا ہوں کہ اس سلسلے میں اپنے کچھ تجربات کو بھی شیئر کرتا چلوں، جنہیں میں عارف بھائی اور ابرار بھائی کے ساتھ میں مختلف وقتوں میں شیئر کرتا بھی رہا ہوں۔
میری معلومات کے مطابق لگیچر بیسڈ فونٹ میں ’کرننگ‘ جیسی سہولت شامل کے لیے فی الحال ’وولٹ‘ ہی سب سے بہترین ٹول ہے، جو کہ اس کام کے لیے ناکافی ہے، اور بدقسمتی سے مائکروسوفٹ کی جانب سے ’وولٹ‘ پر مزید کام بھی نہیں ہورہا ………

فونٹ میں ’کرننگ‘ کی ضرورت دو اعتبار سے ہوتی ہے۔
• اول …… دو مختلف لگیچرز کے درمیان جو بغیر کسی اسپیس کے لکھے جاتے ہیں اور ایک ہی لفظ کے طور سے پڑھے جاتے ہیں۔
مثلاً: (مرسلین، مرتبہ، بوکس، بدفعلی، مزید، طرف، کوشش، مرتکب، مرضی)
• دوم …… دو مختلف الفاظ کے درمیان جو کہ اسپیس کے ساتھ لکھے جاتے ہیں اور دو الگ الفاظ کے طور سے پڑھے جاتے ہیں۔
مثلاً: (اردو محفل، جو کسی، پھر کوشش، خبر مسلسل، وہ مستقل،بہت مسلسل)
اول صورت کی ’کرننگ‘ کسی بھی لگیچر بیسڈ فونٹ میں کافی بہتر صورت میں ڈالنا ’وولٹ‘ ہی کے ذریعہ ممکن ہے۔
دوم صورت کی ’کرننگ‘ کے لیے ’وولٹ‘ ناکافی ہے۔ اس کے لیے ضروری ہے کہ ’وولٹ‘ کا بہتر متبادل مہیا ہوجائے یا پھر فونٹ ہی میں کھپنے کی بجائے کسی ٹول کی مدد سے اس کا حل فونٹ کی قید کے ساتھ ٹیکسٹ کو کنٹرول کرتے ہوئے سیٹ کیا جائے۔
کیونکہ دوم صورت کی ’کرننگ‘ محض دو لگیچرز کے مابین نہیں ہوتی بلکہ دو الگ الگ الفاظ کے مابین کی جاتی ہے بلکہ بعض اوقات تو اس سے بھی زیادہ کی ضرورت پڑتی ہے اور یہ سمجھ وولٹ میں کیسے ڈالنی ہے اس کی سمجھ آج تک مجھے نہیں آسکی۔
وولٹ کو تو بعد میں سمجھائیں گے پہلے ہم تو نیچے موجود نمونے کی مدد سے سمجھ لیں۔​
Image_14.JPG

یہاں پر لفظ ’مسلسل‘ کو مختلف الفاظ کے ساتھ مینول سیٹ کیا گیا ہے اور کہاں کتنی مقدار میں کرننگ کی گئی ہے اس کو لکیر سے واضح کیا گیا ہے۔
میرا نہیں خیال کے فونٹ میں ’وولٹ‘ جیسے ٹول کی مدد سے اس انداز کی کرننگ شامل کی جا سکتی ہے۔ البتہ ’گارسہ‘ جیسے ٹول نے اس کام کو انتہائی آسان ضرور کر دیا ہے۔
ابھی تو ایک بہت اہم سوال کا جواب بھی تلاش کرنا باقی ہے کہ اسپیس کے ساتھ شامل کرننگ کا اس وقت کیا ہوگا جب وہ الفاظ اس صورت میں ہوں گے کہ ایک لفظ لائن کے آخری میں ہوگا اور دوسرا لفظ اگلی لائن کے شروع میں ہو گا، تو کیا پھر بھی کرننگ زبردستی برقرار رہے گی یا کسی سمجھداری کا مظاہرہ کرپائے گی۔

ویسے تو بہترین کرننگ شامل کرنے کے لیے ’لگیچرز‘ کی طرح ’نقطوں‘ پر مکمل کنٹرول ہونا بھی ضروری ہے، لیکن ابھی ہمارے فونٹ ساز ایسا فونٹ ہی نہیں بنا پائے کہ جس میں ’نقطوں‘ پر بھی مکمل قابو پایا جا سکے، اس لیے میں بھی اس بات کو یہیں پر چھوڑے دیتا ہوں۔​
 

نعیم سعید

محفلین
متلاشی بھائی! آپ ذرا وی بی کے ذریعہ کی جانے والی ’کرننگ‘ کے طریقہ کار کو تفصیل سے بتائیں کہ اس کے ذریعہ کیا کچھ ممکن ہے۔
 

شاکرالقادری

لائبریرین
kern.jpg


نعیم بھائی اس قسم کے لگیچرز پر غور کریں تو ایک حل سامنے آتا ہے
سب سے پہلے آپ دیکھیں کہ بیس لائن ۔۔۔ جس پر ر۔۔ د۔۔ و۔۔ وغیرہ حروف کرسی جماتے ہیں اس بیس لائن سے مسلسل نامی لگیچر کتنا اونچا ہے
پھر یہ دیکھیں کہ ہمارے پاس کسی بھی لگیچر میں سب سے آخر میں آنے والاحرف یا کوئی بھی اکیلا حرف زیادہ سے زیادہ کتنا اونچا ہو سکتا ہے
جب یہ معلوم ہو جائے تو آپ "مسلسل" نامی لگیچر کے شروع میں میم اور سین کے نیچے دستیاب خالی سپیس کو چیک کریں اور ہم نے جو کسی لگیچر کے آخری حرف یا کسی حرف کی زیادہ سے زیادہ اونچائی دریافت کی تھی اس مقام پر ایک افقی لکیر لگا لیں
اور اور اونچے سے اونچے حرف یا لگیچر کے آخری حرف کو "مسلسل" نامی لگیچر کے نیچے اس طرح داخل کریں کہ وہ بیس لائن پر اپنا مقام اور کرسی برقرار رکھے اور "مسلسل" نامی لگیچر کی میم اور سین کے نیچے اس افقی لائن کے برابر رہے اور میم اور سین کو ٹچ بھی نہ کرے
یہی وہ مقام ہے جہاں ہمیں "مسلسل" نامی لگیچر کا دایاں بیرنگ سیٹ کرنا ہے
اب مسلسل" نامی لگیچر دوسرے لگیچرز کے ساتھ کرن بھی کرے گا اور کسی پچھلے لگیچر کے ساتھ ٹچ بھی نہیں کرے گا
 

نعیم سعید

محفلین
شاکر بھائی! آپ کا بتایا ہوا طریقہ آخری صورت میں قابل قبول ہو تو سکتا ہے، مگر میں پھر بھی اس کے حق میں نہیں ہوں کیونکہ بیرنگز کو اتنا اندر کرنا کہ لگیچر کو ہی کاٹ دیا جائے یہ بھی درست نہیں ہے، کیونکہ ایسا کرنے سے دوران کمپوزنگ ایسے الفاظ جب سطر کی ابتداء میں آتے ہیں تو صفحہ کے مارجن ہی سے باہر نکلتے دکھائی دیتے ہیں۔ جن کی وجہ سے صفحہ کی عبارت کا توازن اچھا نہیں لگتا۔ میں نے اگر اس جگاڑ کو تھوڑا بہت استعمال کیا بھی ہے تو صرف اور صرف حرف ’ک‘ اور ’گ‘ سے شروع ہونے والے لگیچرز کے لیے استعمال کیا ہے۔ کیونکہ ان کا تھوڑا سا باہر نکلا ہوا ہونا اتنی جلدی نمایاں نظر نہیں آتا۔
میری رائے میں بیرنگز کو اتنا زیادہ اندر کرنے سے بہتر ہے کہ تھوڑی بہت سپوٹ جو ’وولٹ‘ مہیا کرتا ہے اسے ہی قبول کر لیا جائے۔
 

نبیل

تکنیکی معاون
السلام علیکم،
ماشاء اللہ بہت مفید اور معلوماتی تبادلہ خیالات جاری ہے۔ میرے خیال میں کرننگ سے متعلقہ گفتگو کو الگ دھاگے میں علیحدہ کر دیا جانا چاہیے۔
برادرم نعیم سعید ، وولٹ کے علاوہ کرننگ ڈیفائن کرنے کے اور کیا طریقے موجود ہیں؟ اور وولٹ میں اس سلسلے میں کیا کمی موجود ہے؟
 

نعیم سعید

محفلین
وعلیکم السلام!
نبیل بھائی! لگیچر بیسڈ فونٹس کے لیے تو ’وولٹ‘ ہی بہتر حل نظر آتا ہے، جس سے فونٹ ہی میں بلٹن ’کرننگ‘ شامل کی جاسکتی ہے۔ اور دیگر فونٹس ایڈیٹرز میں جو بھی کرننگ سپوٹ ہے وہ ’وولٹ‘ سے بھی کمزور ہے، اس سلسلے میں اصل تحقیق عارف بھائی نے کی تھی، و ہی زیادہ بہتر طور سے بتا سکتے ہیں کہ ’وولٹ‘ ہی کو کیوں ترجیح دی گئی ہے۔
دوسری بات کہ ’وولٹ‘ میں کیا کمی ہے؟ ’کرننگ‘ ڈیفائن کرنے کے طریقے اور ان کے مسائل کیا ہیں؟ اس کے لیے کوشش کرتا ہوں کچھ تفصیل سے اپنی رائے اور تجربات دونوں کو بیان کر سکوں۔

الحمدللہ اب تک لگیچر بیسڈ کئی فونٹ بن گئے ہیں، اور ان شاء اللہ آئندہ بھی بنتے رہیں گے اور یقیناً نئے فونٹس میں پہلے کے مقابلے میں بہتری بھی آتی رہے گی۔ کیونکہ میرا تعلق پبلشنگ انڈسٹری سے ہے۔ اس لیے میں اِن فونٹس کو اسی معیار پر رکھ کر دیکھتا ہوں کہ پبلشنگ انڈسٹری کے لیے یہ فونٹس کس حد تک کارآمد ہیں اور ان میں کیا کیا کمیاں رہ گئی ہیں یا ان میں مزید کیا بہتری لائی جا سکتی ہے۔
اسی سوچ کے ساتھ کئی تجربات بھی کیے اور ماہر دوستوں سے مشاورت بھی ہوتی رہی۔ مگر ابھی تک کچھ قابل عمل حل نہیں مل سکا کہ جس کی بنیاد پر ایسا فونٹ بنایا جا سکے، جسے پبلشنگ انڈسٹری کے لیے معیاری فونٹ کہا جا سکے۔ معیاری سے مراد ہے کہ کم از کم ان پیج کے نوری نستعلیق فونٹ جیسی خوبیاں تو ہوں۔ جب کہ میری نظریں تو اس سے بھی بہتر فونٹ بنانے پر لگی ہوئی ہیں۔ کیونکہ ان پیج کے نوری نستعلیق میں بھی کئی کمیاں پائی جاتی ہیں۔
یہ صرف میری خواہش ہی نہیں بلکہ آج کی ضرورت ہے، کیونکہ آج بھی پبلشنگ کی فیلڈ سے وابستہ بہت سے لوگ صرف فوٹس کے معیاری نہ ہونے کی وجہ سے ابھی تک مجبوراً ان پیج کو استعمال کر رہے ہیں۔
اب میں اصل بات کی طرف واپس آتا ہوں۔

معیاری لگیچر بیسڈ فونٹ میری رائے میں مختلف صورتوں میں بنایا جا سکتا ہے۔ مثلاً:

• پہلی صورت …… لگیچرز کا استعمال نقطوں کے ساتھ۔
پھرپور تعداد میں لگیچرز مکمل شکل میں (یعنی ان پر نقطے وغیرہ بھی لگے ہوں) تیار کر کے فونٹ میں شامل کر دیئے جائیں۔ اور آخر میں کرننگ پیئرز کی لسٹیں تیار کر کے ان لگیچرز کی آپس میں کرننگ سیٹ کر دی جائے۔ اور یہی وہ صورت ہے جس پر ابھی تک ہم نے تمام لگیچرز بیسڈ فونٹ تیار کیے ہیں اور شاید آئندہ آنے والے بھی اسی صورت ہی میں ہو رہے ہیں۔ اس صورت کی سب سے بڑی خوبی یہ ہے کہ ’وولٹ‘ میں کم سے کم محنت میں لگیچرز بیسڈ فونٹ تیار ہو جاتا ہے۔
اس صورت کے مسائل:
٭ لگیچرز کا بھاری تعداد میں استعمال ہونا، جس کی وجہ سے فونٹ سائز بھی زیادہ بڑھ جاتا ہے۔
٭ فونٹ زیادہ ہیوی ہونے کی وجہ سے ’وولٹ‘ کے کریش ہوجانے کا خطرہ۔
٭ سب سے بڑی کمزوری یہ کہ لگیچرز پر نقطے لگانے سے نقطے مستقل طور پر لگیچرز کا حصہ بن جاتے ہیں۔ اور ’وولٹ‘ میں کرننگ سیٹ کرتے وقت ان نقطوں پر کسی طرح کا کوئی کنٹرول باقی نہیں رہتا، جب کہ خوبصورت کرننگ سیٹ کرنے کے لیے نقطوں پر مکمل کنٹرول ہونا بہت ضروری ہے۔

• دوسری صورت …… لگیچرز کا استعمال بغیر نقطوں کے۔
لگیچرز کو بغیر نقطے لگائے یعنی کشتیوں کی صورت میں فونٹ میں شامل کیا جائے۔ اور ’وولٹ‘ پر تھوڑی محنت کر کے نقطے لگائے جائیں۔ اس صورت سے میرے حساب کے مطابق ۱۸۰۰۰ ہزار کشتوں کی مدد سے تقریباً ۴۲۰۰۰ ہزار کے قریب لگیچرز تیار ہوسکتے ہیں۔ (جمیل نوری نستعلیق ورژن ۲ کے تقریباً ۲۵۰۰۰ ہزار لگیچرز کی کشتیاں نکالی جائیں تو ۱۰۱۰۰ بنتی ہیں۔ یعنی فونٹ کا سائز آدھے سے بھی کم کیا جا سکتا ہے۔) یہاں تک کا کام وولٹ میں کافی مشکل ضرور مگر ممکن ہے۔ مگر …… وولٹ کے مسائل کچھ ایسے ہیں کہ آگے بڑھنے کی ہمت ہی نہیں ہوپاتی۔
اس صورت کے مسائل:
٭ جب بات وولٹ پر ’کرننگ‘ سیٹ کرنے کی آتی ہے تو وہاں انتہائی مایوسی ہوتی ہے کہ وولٹ نقطوں کے ساتھ ان لگیچرز کو دکھانے کی صلاحیت ہی نہیں رکھتا، اور جب تک لگیچرز نقطوں کے ساتھ نظر نہیں آئے گا اس کی کرننگ کیسے سیٹ کی جاسکتی ہے۔ نقطے پر کوئی اضافی کنٹرول حاصل کرنا تو بہت دور کی بات رہ جاتی ہے۔ اگر کرننگ سیٹ کرتے وقت نقطوں پر کنٹرول حاصل ہوجائے تو یہ صورت پہلی صورت کے مقابلے میں بہت زیادہ بہتر ہے۔
بہر حال یہ بات تو طے شدہ ہے کہ بہتر ’کرننگ‘ نقطوں پر کنٹرول حاصل کرے بغیر ممکن نہیں۔
جوہر نستعلیق فونٹ میں اسی اعتبار سے ۱۷۰۰ کشتیاں ڈالی گئی تھیں۔ کرننگ شامل کرنے کا شاید انہوں نے اُس وقت خواب بھی نہیں دیکھا ہوگا، جو اس کے مسائل اندازہ کر کے حل نکالتے، اتنا عرصہ گذر جانے کے باوجود آج تک وہ تو اپنے پروفیشنل ورژن میں بھی کرننگ کی بنیادی سہولت شامل نہیں کرسکے۔ صرف لگیچرز کے بیرنگز کو اندر کُھسا کر کام چلایا گیا ہے۔

• تیسری صورت …… مکمل الفاظ لگیچرز کے طور پر۔
یہی وہ صورت ہے جو اس وقت میری نظر میں پسندیدہ ترین صورت ہے، کیونکہ اس میں ٹیکنالوجی کا استعمال کم سے کم ہونا ہے، اور زیادہ تر کام ایک بار کی مینول مشقت ہی سے ہوجانا ہے۔ یہ الگ بات ہے کہ اس صورت کے لیے بھی جس حد تک ٹیکنالوجی کی ضرورت ہے وہ بھی ابھی میسر نہیں ہے۔
اس صورت سے مراد یہ ہے کہ مخلتف لگیچرز کو ملا کر جو جو بھی ممکنہ الفاظ مطلوب ہوں انہیں مکمل الفاظ کے طور پر ہی فونٹ میں تیار کر لیا جائے۔
مثلاً: لفظ ’مرسلین‘ میں دو لگیچرز استعمال ہو رہے ہیں دونوں کو ایک ساتھ رکھتے ہوئے ’مرسلین‘ کا گلف تیار کر لیا جائے۔ اور ان دونوں کے درمیان نقطوں پر مکمل کنٹرول کے ساتھ جو بھی کرننگ سیٹ کرنی ہو مینول ہی کر لی جائے۔ اسی طرح ایک بار تمام الفاظ پر محنت کر لی جائے۔ خوبصورت ترین کرننگ فونٹ میں آٹومیٹک ہی شامل ہوجائے گی۔ آٹومیٹک سے مراد کہ کرننگ کے لیے ’وولٹ‘ نامی کسی بلا سے مقابلہ نہیں کرنا پڑے گا۔
اس صورت کے مسائل:
٭ ایک یونی کوڈ فونٹ میں زیادہ سے زیادہ ۶۵۰۰۰ ہزار کے قریب لگیچرز ہی شامل کیے جا سکتے ہیں، جب کہ اس تیسری صورت سے اگر فونٹ بنایا جائے تو کم از کم دو ڈھائی لاکھ گلف بنانے کی ضرورت ہے، جو ایک ہی فونٹ فائل میں آنا ممکن نہیں ہے، فائلیوں کو تقسیم کر کے بنانا بھی شاید یونی کوڈ سپوٹ کے ساتھ ممکن نہیں ہے۔ اس پر میری ذاتی تحقیق نہیں عارف بھائی نے کچھ تحقیق ضرور کی تھی۔
اگر کوئی سٹنڈرڈ سپوٹ ناکافی ہے یا رکاوٹ بن رہی ہے تو اس کے لیے مجبوراً کسی جگاڑ سے ہی کام چلانا چاہئے۔ اور جگاڑ کی ایک صورت یہ ہوسکتی ہے کہ بہت سارے سمبل فونٹ بنا کر اُن میں اِن الفاظ کے لگیچرز کو ڈال دیا جائے۔ جو کہ تقریباً ۱۰۰۰ یا اس سے کچھ اوپر بنیں گی۔ اور پھر اِن سمبل فونٹ فائلیوں کو کسی ٹول کی مدد سے ایک ساتھ چلا لیا جائے، مطلب ٹیکسٹ ایڈیٹر میں فونٹ منتخب کر کے جو بھی لکھا جائے اِن مختلف سمبل فائلیوں میں سے ریڈ کر کے ڈسپلے ہوجائے۔
اب مجھے نہیں معلوم کہ ایسا ٹول بنانے کے لیے کتنی صلاحیت اور محنت درکار ہوگی، بن بھی پائے گا کہ نہیں۔ ویسے اس کی زندہ مثال ہمارے سامنے ان پیج ہی ہے، ان پیج کے نوری نستعلیق اور فیض نستعلیق ایک حد تک اسی آئیڈیے پر کام کر رہے ہیں، بس فرق یہ ہے کہ انہوں نے صرف ’لگیچرز‘ سے کام چلایا ہے، اور ہم مکمل الفاظ کے ’لگیچرز‘ ڈالنے کا سوچ رہے ہیں۔
٭ اس صورت میں بنا ہوا فونٹ شاید نیٹ پر قابل استعمال نہ ہو۔ (بلاشبہ پبلشنگ والوں کے لیے آئیڈل ضرور ہوگا۔)
٭ ممکن ہے ایسا فونٹ اپنے مخصوص ٹول کے ساتھ صرف اسی پروگرام میں چل پائے گا، جس کی سپوٹ شامل کی جائے گی۔ اگر پہلے درجہ میں صرف ’ورڈ‘ میں چلنے کے قابل ہو تو اتنا بھی کافی ہے۔
الحمدللہ! اس کے لیے سب سے بہترین مثلاً ہمارا اپنا بنایا ہوا فونٹ ’القلم قرآن پبلشرز‘ ہے، اس فونٹ کے لیے وولٹ پر جو کام ہوا ہے وہ چند گھنٹوں سے زیادہ نہیں ہے، تمام کی تمام کرننگ فونٹ گلف ہی میں سیٹ کی گئی ہے۔ مگر فرق یہ ہے کہ قرآنی فونٹ میں تو محدود تعداد میں لگیچرز شامل کرنے تھے جو مقررہ انتہائی حد سے بہت کم تھے یعنی تقریباً ۱۷۷۰۰ اس لیے وہاں فونٹ بنانے میں کوئی دشواری نہیں ہوئی، مگر یہاں گلف کی تعداد لاکھوں میں جانی ہے جو ایک ہی فونٹ فائل میں ممکن نہیں ہے۔

یہ تین صورتیں تو میں نے اپنے تجربات اور مشاہدہ کی بنیاد پر بیان کی ہیں، اور ان میں کسی ایک کو دوسری پر ترجیح دینا بھی محض میری رائے ہے۔ مشورہ اور تحقیق سے جو بھی صورت بہتر اور جاندار نتائج برامد کر سکتی ہو اسی کو معیار بنا لینا چاہیے۔
ایک اہم بات توجہ دلانے کے لیے عرض کرنا چاہوں گا کہ انٹرنیٹ کے یا پبلشنگ کے استعمال کے لیے فونٹ کی خوبیوں اور خامیوں کے معیار بالکل الگ الگ ہیں، ضروری نہیں کہ ایک ہی فونٹ میں تمام خوبیاں بھی شامل ہو جائیں اور دونوں جگہ ایک ساتھ چلانے کے قابل بھی ہو۔ اور اگر واقعی ان خوبیوں اور خامیوں میں بہت ٹکراؤ پایا جاتا ہے تو کیوں نہ دونوں جانبین کی ضروریات کو مدّنظر رکھتے ہوئے فونٹ کے دو الگ الگ ورژن تیار کیے جائیں۔
مثلاً: نیٹ ورژن اور پبلشنگ ورژن۔
 

شاکرالقادری

لائبریرین
میرے نزدیک بھی یہی تیسری صورت بہترین ہو سکتی جس میں کسی ٹول کی مدد سے بیک وقت کئی فونٹ فائلوں کو اوپریٹ کر کے متن حاصل کیا جاتا ہے۔ ۔ ۔ اس قسم کی خواہش کا اس سے پہلے بھی کئی بار یہاں محفل پر ہی اظہار کیا جا چکا ہے

لیکن اس کے باوجود میں یہ کہتا ہوں کہ صورت حال اتنی زیادہ مایوس کن نہیں ہے کسی حد تک گلفس کے اندر بیرنگز کو کنٹول کر کے اور کسی حد تک وولٹ میں کام کر کے بہر حال بہتر نتائج حاصل کیے جا سکتے ہیں
ایک اور بات بھی قابل غور ہے کہ انٹر نیٹ ایکسپلورر کے انجن میں کونسی تیکنیک استعمال کی گئی ہے کہ وہاں کرننگ کی صورت بہتر نظر آتا ہے
 

arifkarim

معطل
وولٹ کے بارہ میں عموماً یہ تاثر عام ہے کہ وہ ’کمزور‘ سافٹوئیر ہے۔ جبکہ درحقیقت وہ کوئی فانٹ ڈویلپنگ ٹول نہیں بلکہ محض فانٹ کمپائلنگ اور ڈی بگنگ ٹول ہے۔ جمیل نستعلیق، فیض نستعلیق اور القلم قرآن پبلشر میں وولٹ کو محض فانٹ کمپائل کرنے کیلئے استعمال کیا گیا تھا۔ باقی سارہ کام یعنی لگیچرز اکٹھے کرنا، انکو فانٹ میں شامل کرنا اور انکے لک اپس بنا کر ایکسپورٹ کرنا، یہ سب وولٹ سے باہر کیا گیا ہے۔ میرے مطابق ہم وولٹ ہی میں رہتے ہوئے کم از کم انٹر لگیچر یعنی ترسیمہ جات کے درمیان انپیج جیسی کرننگ حاصل کر سکتے ہیں لیکن شرط یہ ہے کہ ماہر پروگرامر حضرات اس سلسلہ میں ہم فانٹ ڈویلپرز کی مدد کریں۔ اسکام کو تین اسٹیج میں کیا جائے گا:
  1. سب سے پہلے تو آپکو اردو زبان میں کثرت سے استعمال ہونے والے الفاظ کا ذخیرہ چاہئے۔ میری اطلاع کے مطابق ابن سعید بھائی کے پاس مختلف لغات اور باقی نیٹ ذرائع سے حاصل شدہ اردو الفاظ کا ایک مستند ذخیرہ موجود ہے۔ اس ذخیرہ الفاظ میں سے آپ ان تمام الفاظ کی چھانٹی کردیں جو اس فانٹ میں جسکی کرننگ کرنی ہو، لگیچر کی شکل میں موجود نہیں۔ ہو سکتا ہے یہ تعداد چھانٹی کے بعد کچھ لاکھ کے برابر ہو۔ اگلا کام ان الفاظ کی لمبائی کے حساب سے چھانٹی ہے یعنی حروف تہجی کے اعتبار سے سب سے لمبا لفظ لسٹ میں سب سے پہلے آنا چاہئے۔ یہ اسلئے کیونکہ اوپن ٹائپ فانٹ رینڈرنگ کا پارسر انجن لک اپس کو انکی لمبائی کے لحاظ سے پروسیس کرتا ہے۔ یہی وجہ ہے کہ ابتک کے تمام لگیچر بیسڈ فانٹس کے لک اپس کو انکی لمبائی کے حساب سے سارٹ کرکے انکے لک اپس بنا کر وولٹ میں شامل کیا گیا ہے۔
  2. تمام اردو الفاظ کی درست سارٹنگ کے بعد ان میں سے کرننگ پیئرز نکالنے کا مرحلہ آتا ہے۔ یہ عمل انتہائی حساس اور بہترین طریقہ سے کرنا ضروری ہے وگرنہ وولٹ میں کرننگ فیل ہو جائی گی۔ یاد رہے کہ صرف ان الفاظ میں سے پیئرز نکالیں جہاں کرننگ کی واقعی ضرورت ہو۔ کچھ جائزہ کے بعد اصول مرتب کئے جا سکتے ہیں کہ کن پیئرز کو کرننگ کی ضرورت ہے۔ جسکے بعد وہ الفاظ جنکو کرننگ کی طلب نہیں انکو لسٹ میں سے خارج کردیں۔ اسکے علاوہ کرننگ پیئرز ایک سے زائد پروسیسنگ سائیکلز کیساتھ نکالنا ضروری ہیں۔ جیسے 'مرمرے' ایک لفظ ہے تو 'مرے' کا کرننگ پیئر پہلے سائکل میں الگ ہوگا جبکہ 'مرمر' کا پیئر دوسرے سائکل میں۔ یوں کرننگ پیئرز کی ایک سے زائد لسٹیں بنیں گی۔ یعنی ہر پروسیسنگ سائکل میں سے جو کرننگ پیئرز الگ ہوں گے وہ الگ الگ فائلز کی لسٹوں میں سیو ہوں گے۔ بہت سے الفاظ 2 سے زائد لگیچرز کا مجموعہ ہوتے ہیں۔ یوں ہر مجموعہ کے پیئرز الگ لسٹ میں شامل کئے جائیں۔ ہمیں اس سے کوئی غرض نہیں کہ ہمیں کتنے سائکلز درکار ہیں اگر مندرجہ بالا نتیجہ ایک ہی پروسیسنگ سائکل سے حاصل ہو سکتا ہے تو یہی کافی ہے۔ اس عمل کو بیک وقت الفاظ کی مکمل لسٹ پر چلانا ضروری ہے تاکہ درست پیئرز درست لسٹ میں حاصل ہو سکیں۔ بعد میں ان تمام لسٹوں کو یکجا کر کے تمام ڈپلیکیٹ پیئرز کی چھانٹی کر دیں۔ ہمیں بس اتنا پتا ہونا چاہئے کہ ایک الگ لسٹ کس کرننگ پیئر پر شروع ہو رہی ہے۔ تاکہ وولٹ میں امپورٹ کرتے وقت انہیں الگ الگ ٹیبل میں جگہ دی جائے۔
  3. اب سب سے اہم اور چیلنجنگ مرحلہ یعنی ان کرننگ پیئرز کی آٹو کرننگ کا آتا ہے۔ اس سلسلہ میں خاکسار نے ابرار بھائی کو تحقیق کیلئے کہا تھا۔ خود میں نے ایک ایرانی پروگرامر جس نے پائتھون زبان میں فانٹ لیب کی مدد سے لگیچر گلفس کی آپس میں آٹو کرننگ کی تھی سے اسکی بنائی ہوئی اسکرپٹس حاصل کرکے یہاں محفل پر شیئر کی تھیں۔ اسکے مطابق یہ اسکرپٹس فانٹ میں سے لگیچر گلفس کو امیجز بنا کر ایکسپورٹ کرتی ہیں جسکے بعد ان پر ایک موجود شدہ الگوردھم اپلائی کی جاتی ہے جو ان گلفس کے درمیان فاصلہ کو خودکار طور پر الگوردھم میں طے شدہ اصولوں کے مطابق ڈھونڈ لیتی ہے۔ اس 'فاصلے' کو درست کر دینے کے بعد یہ ڈیٹا وہ اسکرپٹس پھر وولٹ کی زبان میں ٹیبلز کی صورت میں کنورٹ کر کے ایکسپورٹ کر دیتی ہیں۔ بعد ازاں ان ٹیبلز کو وولٹ میں ایک خاص طریقہ سے امپورٹ کیا جاتا ہے یعنی ہر سائکل کی لسٹ کے حساب سے الگ الگ ٹیبلز میں۔ اور یوں آپ کم از کم انٹرورڈ کرننگ کو حاصل کرنے میں کامیاب ہو سکتے ہیں۔ یہ کرننگ چونکہ فانٹ کے اندر بلٹ ان ہو گی اسلئے ہر جگہ کام کرے گی۔ یوں ہمیں ورڈ، انڈیزائن یا کسی بھی سسٹم کیلئے جہاں یہ فانٹ استعمال ہوگا، وہاں خاص پروگرام، پلگ ان یا ٹول لکھنے کی ضرورت نہیں۔

    اس ایرانی پروگرامر نے محض دو ہفتہ کے اندر اندر یہ سب کام با آسانی کر لیا جو ہم لوگ کئی سالوں میں نہیں کر پا رہے۔ اسکا کاوشی دھاگہ جس میں اسنے ان سب اسکرپٹس کی تمام کہانی لکھی ہے یہاں ملاحضہ ہو:
    http://wt-vw.typophile.com/node/73127
    اسکا ارادہ ان سب اسکرپٹس کو ملا کر ایک صارف دوست گرافک انٹرفیس پر مبنی ٹول بنانے کا بھی تھا لیکن بعض وجوہات کی بنا پر وہ اسکام کو آگے نہیں بڑھا۔اگر ہم انہی اسکرپٹس کو ایک آسان ٹول کی شکل دے دیں جہاں بعد ازاں ان لگیچرز کی کرننگ کو دستی طور پر درست کرنے کی سہولت بھی موجود ہو تو میرے خیال میں لگیچر بیسڈ ہر اوپن ٹائپ فانٹ جو آج کرننگ کی سہولت سے محروم ہے اور مستقبل کے فانٹس بھی اس سے فائدہ اٹھا سکتے ہیں۔ لیکن شرط وہی ہے کہ اسکام کیلئے محنت، لگن اور جذبہ کی ضرورت ہے۔ ہے کوئی جو اسکام کیلئے 'اردو' زبان کا ساتھ دے؟
 

نبیل

تکنیکی معاون
شکریہ عارف۔ میں نے کرننگ پر تحقیق سے متعلقہ پیغامات کو اس تھریڈ میں علیحدہ کر دیا ہے۔ اس پیچیدہ موضوع پر اس طرح کی مفید معلومات کا اکٹھا ہونا خوش آئند ہے۔ ابھی اردو ٹائپو گرافی میں بہت کام ہونا باقی ہے جبکہ اس میدان میں مہارت رکھنے والے ابھی بہت کم لوگ موجود ہیں، اور جو تھوڑے بہت کام کرنے والے لوگ ہیں، وہ دوسری مصروفیات میں گرفتار ہوتے نظر آ رہے ہیں۔ اس لیے ضرورت اس بات کی ہے کہ ٹائپوگرافی اور خاص طور پر نستعلیق ٹائپوگرافی کے علم کو عام کیا جائے تاکہ زیادہ لوگ اس تحقیق کے میدان میں آگے آ سکیں۔ ذاتی طور پر میں اوپن ٹائپ معیارات اور فونٹ ڈیویلپمنٹ کے بارے میں کچھ نہیں جانتا ہوں، لیکن پھر بھی میں کوشش کر رہا ہوں کہ اس فیلڈ کے کچھ اسرار و رموز کو جان سکوں۔ فونٹ ڈیویلپمنٹ کے لیے کئی اوپن سورس لائبریریز موجود ہیں۔ ان میں سے ٹی ٹی ایکس لائبریری کو ہم نوری نستعلیق فونٹ کی تیاری میں مؤثر طور پر استعمال کر چکے ہیں۔ اس کے علاوہ پائتھون کے فونٹ فورج ماڈیول میں پوری فونٹ فورج کی functionality دستیاب ہے۔ میں نے ایک مرتبہ فونٹ فورج ماڈیول کے ذریعے ایک فونٹ میں svg فارمیٹ کے لگیچرز امپورٹ کرنے کا تجربہ بھی کیا ہوا ہے۔ علاوہ ازیں روبو فیب لائبریری بھی موجود ہے۔ یہ تمام لائبریریز کافی وسیع فیچرز کی حامل ہیں اور ان کے استعمال میں مہارت حاصل کرنے میں مدت بھی لگ سکتی ہے۔ میں پہلے بھی کئی مرتبہ عرض کر چکا ہوں کہ نستعلیق ٹائپوگرافی کے پراجیکٹس کے اہداف کے حصول میں ایک نکتہ یہ طے کرنا چاہیے کہ قابل حصول اہداف سے کام شروع کیا جائے۔ مثال کے طور پر پہلے دو کے جوڑ والے لگیچرز اور الفاظ پر کام کیا جائے اور اس میں کامیابی کے حصول کے بعد ہی آگے بڑھا جائے۔
 

نعیم سعید

محفلین
نبیل بھائی!
اول …… دو جوڑ والے لگیچرز ہوں یا اس سے زیادہ جوڑ والے لگیچرز ہوں، وولٹ میں کافی بہتر صورت میں کرننگ دی جا سکتی ہے، مشکلات تو اسپیس کے ساتھ کرننگ دینے میں محسوس ہو رہی ہیں، اس کے لیے کوئی حل نکالنا زیادہ اہم ہے، چاہیے ووولٹ میں نکل جائے یا اس کے بغیر کسی ٹول کی صورت میں۔
دوم …… یہ بات بھی تجربات سے پہلے طے ہونا ضروری ہے کہ بنیادی طور پر فونٹ کس طرح کا ہونا چاہیے ، جس سے بہتر سے بہتر صورت کی کرننگ حاصل کی جاسکتی ہو۔
سوم …… مطلوبہ ہدف حاصل کرنے کے لیے موجودہ سہولیات ہی کافی ہیں یا کسی ٹول وغیرہ کو بنانے کی ضرورت ہے۔
 
ابن سعید بھائی! آپ بھی الفاظ کا مستند ذخیرہ مہیا کر دیں تو کرننگ پیئرز کی لسٹیوں کی تیاری میں مدد مل جائے گی۔
جی یقیناً! بلکہ ہم نے کئی دفعہ عارف کریم صاحب سے رابطہ کرنے کی کوشش بھی کی لیکن وہ کسی پیغام کا جواب دینے پر ہی آمادہ نہ ہوئے۔ اس کے بعد ہماری ترجیحات کچھ ایسی بدل گئیں کہ ہماری توجہ اردو ویب ڈیجیٹل لائبریری کی طرف مبذول ہو گئی اور ان الفاظ کا ذخیرہ اور اس سے جڑے منصوبے کچھ عرصہ کے لئے سرد خانے کی نذر ہو گئے۔ اب ذرا لائبریری کی سائٹ کا اجرا ہو جائے اس کے بعد اس پر توجہ دیتے ہیں ان شاء اللہ۔ بلکہ ہم کافی حد تک ٹیکسٹ پروسیسنگ کر کے مختلف فہرستیں بھی تیار کر سکتے ہیں جن میں اوپر عارف کریم بھائی کی بیان کردہ دو اسٹیجیز تک کا کام شامل ہوگا۔ اس کے لئے آپ میں سے کوئی صاحب ہم سے وائس یا ویڈیو چیٹ پر رابطے میں رہ کر کام کو انجام دینے میں تعاون کر سکتے ہیں۔ لیکن ابھی دو تین ہفتوں تک اس کام کو ملتوی کرنا ہوگا۔ :)
 
Top