فونٹ فورج کے لیے پائتھون سکرپٹ

نبیل نے 'اردو نستعلیق فونٹ پراجیکٹ' کی ذیل میں اس موضوع کا آغاز کیا، ‏اگست 10, 2010

  1. نبیل

    نبیل محفلین

    مراسلے:
    16,743
    جھنڈا:
    Germany
    موڈ:
    Depressed
    میں نے کچھ عرصہ قبل فونٹ فورج پر کچھ تجربات کا آغاز کیا تھا جن کا مقصد خود کار طریقے سے ایک بلینک فونٹ میں نفیس نستعلیق کے ذریعے جنریٹ کردہ ترسیمہ جات کو امپورٹ کرنا تھا۔ میں یہ کام فونٹ فورج کی پائتھون سکرپٹنگ کے ذریعے کیا جانا مقصود تھا۔ میں نے اس کام کے لیے جو سیٹ اپ تشکیل دیا تھا اس کی تفصیل میں نے کسی اور پوسٹ میں لکھی تھی۔ اس کام کو میں مصروفیات کی وجہ سے آگے نہیں بڑھا سکا تھا، دوسرے میں نے اپنی ورچوئل باکس کی اوبنٹو انسٹالیشن کو جب سے ورژن 10.4 پر اپگریڈ کیا تھا، اس کے بعد سے اس کے ڈیسکٹاپ کی کنفگریشن ٹھیک نہیں ہو سکی ہے۔ مجھے لگتا ہے کہ مجھے نئے سرے سے ورچوئل مشین انسٹال کرنی پڑے گی۔

    فونٹ فورج کو پائتھون کے ذریعے دو طریقے سے آٹومیٹ کیا جا سکتا ہے۔ ایک طریقہ فونٹ فورج کے اندر پائتھون سکرپٹ لوڈ کرکے رن کرنے کا ہے جبکہ دوسرا طریقہ فونٹ فورج کو بطور پائتھون ماڈیول انسٹال کرکے اسے اپنے پائتھون پروگرامز میں استعمال کرنے کا ہے۔ میں نے ابھی تک صرف ایک ایس وی جی فائل کو بطور گلف فونٹ میں امپورٹ کرنے کا تجربہ کیا تھا۔ اصل گول تمام 31000 ایس وی جی فائلوں کو فونٹ میں پائتھون سکرپٹ کے ذریعے بطور گلف امپورٹ کرنا ہے۔ فونٹ فورج کے اندر کسی سکرپٹ کو لوڈ کرکے رن کرن کے لیے File->Execute Script کمانڈ پر کلک کیا جائے تو ذیل کی تصویر کے مطابق ایک ونڈو نظر آتی ہے:

    [​IMG]

    ذیل میں ایک سکرپٹ ہے جس کے ذریعے ایک فائل سے لائن بائی لائن ترسیمہ جات کے نام پڑھے جاتے ہیں اور اس سے متعلقہ ایس وی جی فائل بطور گلف فونٹ میں امپورٹ کی جاتی ہے۔

    کوڈ:
    import fontforge
    tt=fontforge.open("blank.ttf")
    f= open("epsnames.txt" ,'r')
    errorFile= open("errors.txt","w")
    for strGlyphName in f.readlines():
    	# get the Glyph in the font
    	glyph=tt[strGlyphName]
    	# now import the outlines
    	svgPath= "svg/Nafees/"+strGlyphName+".svg"
    	glyph.importOutlines(svgPath)
    errorFile.close()
    f.close()
    tt.generate("NafeesWebLigatures.ttf")
    اس سکرپٹ میں فونٹ فورج کو بطور پائتھون ماڈیول کے استعمال کیا جا رہا ہے۔ ابھی تک میں اس سکرپٹ کو کامیابی سے رن نہیں کر سکا ہوں۔ ابھی تک مجھے صرف ایک مرتبہ ایک سکرپٹ کے ذریعے ایک گلف کو خودکار طریقے سے امپورٹ کرنے میں کامیابی ملی ہے جس کے بارے میں میں یہاں لکھ چکا ہوں۔ یہ سکرپٹ میں نے فونٹ فورج کے اندر سے ہی رن کی تھی۔

    میں نے 31000 سے زائد ایس وی جی فائلیں جنریٹ کی تھیں جن کا حجم زپ کرنے کے بعد 116 میگابائٹ بنتا ہے۔ اس وقت میں نے یہ زپ فائل اپلوڈ پر لگائی ہوئی ہے۔ جونہی یہ فائل اپلوڈ ہو جائے گی، میں اس کا ربط یہاں فراہم کر دوں گا۔ فی الحال میں ترسیمہ جات والی فائل epsnames.txt ، بلینک فونٹ فائل blank.ttf اور اوپر والی سکرپٹ کی فائل svgimport.py کو ایک زپ فائل میں اس پوسٹ کے ساتھ منسلک کر رہا ہوں۔ جو دوست بھی چاہیں، ان کے ذریعے تجربات کا آغاز کر سکتے ہیں۔ اس سلسلے میں جو بھی سوالات ہو، وہ یہاں پوچھے جا سکتے ہیں۔ اس سمت میں تحقیق ضرور جاری رہنی چاہیے۔ اگر اس میں کامیابی ملتی ہے تو اس کے ذریعے اردو فونٹ سازی میں کئی نئے راستے کھل سکتے ہیں۔
     

    منسلک فائلیں:

    • ff.zip
      File size:
      213.5 KB
      مناظر:
      4
    • پسندیدہ پسندیدہ × 6
  2. ابن سعید

    ابن سعید خادم

    مراسلے:
    60,165
    میرے ڈراپ باکس اکاؤنٹ میں بھی ترسیمہ جات کی ایس وی جی فائلیں عرصہ سے پڑی ہیں۔
     
  3. نبیل

    نبیل محفلین

    مراسلے:
    16,743
    جھنڈا:
    Germany
    موڈ:
    Depressed
    ایس وی جی فائلوں کی زپ فائل بھی اپلوڈ ہو گئی ہے۔ اس ربط پر یہ ڈاؤنلوڈ کی جا سکتی ہے۔
    ویسے اتنی بڑی فائل ڈاؤنلوڈ کرنے سے بہتر ہے کہ یہ ایس وی جی فائلیں خود جنریٹ کر لی جائیں۔

    اپڈیٹ: پرانے دھاگے کنگھالنے پر پتا چلا کہ ابن سعید نے پہلے ہی یہ ایس وی جی فائلیں یہاں اپلوڈ کر دی تھیں۔
     
    • پسندیدہ پسندیدہ × 2
  4. محمد سعد

    محمد سعد محفلین

    مراسلے:
    2,851
    جھنڈا:
    Pakistan
    موڈ:
    Bored
    انکل انکل! میرا سوال یہ ہے کہ آپ لوگ براہِ راست اردو ترسیمہ جات والی فائل استعمال کرنے کے بجائے اردو حروف کو انگریزی حروف سے بدلنے کی زحمت کیوں کر رہے ہیں؟؟؟ کیا پائتھن میں اردو حروف کے حوالے سے کوئی پریشانی پیش آ رہی تھی؟ میں کچھ عرصے سے پائتھن کے ذریعے UTF8 والی فائلیں لکھنے پڑھنے پر تحقیق کر رہا ہوں اور اس سلسلے میں اردو حروف کے ساتھ کئی کامیاب تجربات بھی کیے ہیں۔
    اور ہاں، کیا ترسیمہ جات کے ناموں سے فانٹ کو فرق پڑتا ہے؟ مثلاً جیسے آپ نے یہاں پر ترسیمہ "با" کو ba بنا دیا۔۔۔ :confused:
     
  5. دوست

    دوست محفلین

    مراسلے:
    13,072
    جھنڈا:
    Germany
    موڈ:
    Fine
    پائتھون 3 میں شاید یوٹی ایف 8 کی بہتر سپورٹ ہے۔ پچھلے ورژنز میں اس پر تفصیلات پڑھ کر یہی دل کرتا ہے کہ یونیکوڈ کو چھیڑا ہی نہ جائے پائتھون میں۔
     
  6. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    کیونکہ اوپن ٹائپ میں اردو یونیکوڈ نہیں بلکہ Ansi format چلتا ہے۔
     
    • پسندیدہ پسندیدہ × 1
  7. محمد سعد

    محمد سعد محفلین

    مراسلے:
    2,851
    جھنڈا:
    Pakistan
    موڈ:
    Bored
    مجھے سمجھ نہیں آئی۔ پھر ہم فانٹ کو بتاتے کیسے ہیں کہ کن کن یونیکوڈ قدروں کے مجموعوں کے لیے کون سے لگیچر استعمال کرنے ہیں؟ ابھی میں نے نبیل بھائی کا تیار کردہ ٹیسٹ فانٹ چلایا لیکن اردو لکھتے وقت وہ ترسیمہ جات کو استعمال نہیں کرتا۔ یعنی فانٹ میں ترسیمے تو موجود ہیں لیکن وہ اصل یونیکوڈ قدروں کے ساتھ مربوط نہیں ہیں۔
    براہِ مہربانی کوئی مجھے اس کے بنیادی تصورات سمجھا دے۔ انٹرنیٹ سے ڈھونڈ ڈھونڈ کر سمجھنے کی کوشش تو کر رہا ہوں لیکن اس طرح کافی وقت لگ جائے گا۔
     
  8. محمد سعد

    محمد سعد محفلین

    مراسلے:
    2,851
    جھنڈا:
    Pakistan
    موڈ:
    Bored
    نبیل بھائی سے گزارش ہے کہ اس سکرپٹ میں جو تبدیلیاں کر کے اسے چلنے کے قابل بنایا گیا ہے، وہ جلد از جلد شائع کریں تاکہ کام کچھ آگے بڑھ سکے۔ اور اگر پہلے ہی اسے شائع کیا جا چکا ہے اور مجھے نہیں مل رہا تو براہِ مہربانی اس کا پتہ بتا دیں۔
     

اس صفحے کی تشہیر