نوری نستعلیق کرننگ پر کام!

arifkarim نے 'نوری نستعلیق پراجیکٹ' کی ذیل میں اس موضوع کا آغاز کیا، ‏اگست 17, 2015

  1. خالد محمود چوہدری

    خالد محمود چوہدری محفلین

    مراسلے:
    13,912
    جھنڈا:
    Pakistan
    موڈ:
    Festive
    اللہ تعالیٰ آپ کو ہمت حوصلہ صحت اور آسانیاں عطا فرمائے۔
     
    آخری تدوین: ‏ستمبر 2, 2015
    • دوستانہ دوستانہ × 2
    • متفق متفق × 1
  2. mohdumar

    mohdumar محفلین

    مراسلے:
    144
    جھنڈا:
    Pakistan
    موڈ:
    Blah
    Matlab اور Mathematica سافٹویئر اپنے کمپائلر اور runtime بھی دستیاب کرتے ہیں جن کی مدد سے پورٹیبل اطلاقیہ بنانا آسان ہونا چائیے.
     
    • معلوماتی معلوماتی × 3
  3. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    جناب! گروپ اور پیئر کرننگ میں یہی فرق ہے کہ گروپ کرننگ اسپیس کیساتھ کی جاتی ہے جبکہ پیئر کرننگ حروف و ترسیموں کے ساتھ۔ ہمارا بنیادی حدف اسپیس کیساتھ کرننگ تو حل ہو چکا۔ اب ہم اسی فانٹ کے ساتھ mohdumar بھائی کے فراہم کر دہ کرننگ ٹیبلز کو ایڈجسٹ کرنے کی کوشش کرتے ہیں تاکہ اندرون الفاظ کرننگ مزید بہتر ہو سکے۔
     
    • زبردست زبردست × 3
    • متفق متفق × 1
  4. آصف اثر

    آصف اثر معطل

    مراسلے:
    3,060
    جھنڈا:
    Pakistan
    موڈ:
    Busy
    آج مجھےآفس 2013 سے پرنٹ کیے گیے ایک صفحہ سے پتا چلاکہ کرننگ کا یہ مسئلہ انڈیزائن یا آفس کا نہیں بلکہ جمیل نوری نستعلیق فانٹ کا اپنا ہے۔ آفس میں بھی وہی ”ر، د، و، ڑ“ وغیرہ کا مسئلہ نظر آیا۔ امید ہے آپ سب کی محنت سے جمیل نستعلیق کا یہ مسئلہ جلد حل ہوجائے گا۔
     
    • دوستانہ دوستانہ × 1
  5. mohdumar

    mohdumar محفلین

    مراسلے:
    144
    جھنڈا:
    Pakistan
    موڈ:
    Blah
    جناب پھر تو آپ یہ بات بہت دیر سے سمجھےلیکن وہ کہتے ہیں نا دیر آئے درست آئے۔
     
    • پر مزاح پر مزاح × 2
  6. سید ذیشان

    سید ذیشان محفلین

    مراسلے:
    7,417
    موڈ:
    Asleep
    انکو بالکل استعمال کیا جا سکتا ہے matlab سے باہر بھی۔

    ۠۠ع
    مگر اس میں لگتی ہے محنت زیادہ
     
    • معلوماتی معلوماتی × 4
  7. سید ذیشان

    سید ذیشان محفلین

    مراسلے:
    7,417
    موڈ:
    Asleep
    یہ رہا اونچائی نکالنے کا کوڈ جو کل 100 لائنوں پر مشتمل ہے۔

    کوڈ:
    scaling = 5;
    nbins = 11;
    shiftX = 100;
    
    directory_name = 'C:\kerning\JNN';
    files = dir(directory_name);
    
    fileIndex = find(~[files.isdir]);
    
    for i = 1:length(fileIndex)
        fileName{i} = files(fileIndex(i)).name;
    end
    
    cd(directory_name);
    fileID{1} = fopen('C:\kerning\0_shift.txt','w');
    fileID{2} = fopen('C:\kerning\100_shift.txt','w');
    fileID{3} = fopen('C:\kerning\200_shift.txt','w');
    fileID{4} = fopen('C:\kerning\300_shift.txt','w');
    fileID{5} = fopen('C:\kerning\400_shift.txt','w');
    fileID{6} = fopen('C:\kerning\500_shift.txt','w');
    fileID{7} = fopen('C:\kerning\600_shift.txt','w');
    fileID{8} = fopen('C:\kerning\700_shift.txt','w');
    fileID{9} = fopen('C:\kerning\800_shift.txt','w');
    fileID{10} = fopen('C:\kerning\900_shift.txt','w');
    fileID{11} = fopen('C:\kerning\1000_shift.txt','w');
    
    
    
    
    
    for ind = 1:length(fileIndex)
        y = imread(fileName{ind});
    %     y = imread('li.png');
       
        [L W] = size(y);
       
        m = ones(L,W);
        xx = xor(y,m);
        y = bwconvhull(xx,'union');
       
        %     imshow(y);
        %     pause;
       
       
        divisor = fix(shiftX/scaling);
        nW = fix(W/divisor);
       
        if(nW > nbins)
            nW = nbins;
        end
       
       
        starting = ones(nW,L);
        ending = ones(nW,L);
        start_h = zeros(1,11);
        end_h = L*ones(1,11);
        for j = 1:nW
            for i = 0:2
                starting(j,:) = starting(j,:) & y(:,end - (j-1)*divisor - i)';
                ending(j,:) = ending(j,:) & y(:,i+1 + (j-1)*divisor)';
            end
        end
        for j = 1:nW
            start_h(j) = find(starting(j,:) == 1, 1, 'last' );
            if(isempty(start_h(j)))
                start_h(j) = -1;
            else
                start_h(j) = L - start_h(j);
            end
            end_h(j) = find(ending(j,:) == 1, 1 );
            if(isempty(end_h(j)))
                end_h(j) = -1;
            else
                end_h(j) = L - end_h(j);
            end
        end
        %
        diff_start = start_h(1:end-1) - start_h(2:end);
        diff_end= end_h(1:end-1) - end_h(2:end);
        st = find(diff_start < 0,1);
        if(~isempty(st))
            start_h(st+1:nW) = start_h(st);
        end
        en = find(diff_end > 0,1);
        if(~isempty(en))
            end_h(en+1:nW) = end_h(en);
        end
       
        name = fileName{ind}(1:end-4);
        for j = 1:11
             R{ind}{1} = name;
             R{ind}{2}{j} = [fix(scaling*start_h(j)) ; fix(scaling*end_h(j))];
        end
        for j = 1:11
            fprintf(fileID{j},'%s\t',name);
            fprintf(fileID{j},'%d\t%d',fix(scaling*start_h(j)),fix(scaling*end_h(j)));
            fprintf(fileID{j},'\n');
        end
       
    %     imshow(y);
    %     hold on;
    %     plot(W - (0:nW-1)*divisor,L - start_h(1:nW),'rd');
    %     plot((0:nW-1)*divisor,L - end_h(1:nW),'gd');
    %    
    %     hold off;
    %    
       
        ind
    end
    for j = 1:11
        fclose(fileID{j});
    end
     
    • زبردست زبردست × 7
  8. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    زبردست! اب ذرا کسی ایک ترسیمہ پر اسکو اپلائی کرنے کے بعد کا نظارہ بھی ہو جائے۔ تاکہ ٹائپوگرافی سے نابلد افراد کو بھی معلوم ہو سکے کہ آخر یہ جناتی کوڈ عملی طور پر کرتا کیا ہے :)
     
    • متفق متفق × 2
  9. mohdumar

    mohdumar محفلین

    مراسلے:
    144
    جھنڈا:
    Pakistan
    موڈ:
    Blah
    arifkarim
    آپ کی دیرینہ خواہش پوری ہو ہی گئی کہ convex hull طریقہ سے کرننگ حاصل کی جائے!
     
    • دوستانہ دوستانہ × 1
  10. آصف اثر

    آصف اثر معطل

    مراسلے:
    3,060
    جھنڈا:
    Pakistan
    موڈ:
    Busy
    دراصل اس سے پہلے انڈیزائن میں جمیل نوری نستعلیق کی کرننگ کی لڑی زیرِ مطالعہ رہی لہذا تحت الشعور پر انڈیزائن +جمیل نستعلیق+ کرننگ کا ایسا چھاپ لگا کہ اب کہیں جاکر دھل گیا ہے۔:)
     
    • پر مزاح پر مزاح × 2
  11. شاکرالقادری

    شاکرالقادری لائبریرین

    مراسلے:
    2,696
    موڈ:
    Cheerful
    سیدذیشان ! ہم جیسے لوگ جو پروگرامنگ سے نا بلد ہیں اور اس بات سے بھی آگاہ نہیں کہ اس سکرپٹ کو کس پروگرام کے ساتھ رن کیا جائے گا ۔۔۔ بس فونٹ سازی کی حد تک ہی محدود ہیں ۔۔۔ سو ہم جیسے لوگوں کے لیے ایک ایسے خود انحصار اطلاقیہ کی ضرورت ہے جس میں داخلی طور پر یہ کوڈ کام کرے لیکن اس کا یوزر انٹر فیس بہت سادہ سا ہو اور ہم اسے فہرست فراہم کریں ، مطلوبہ فونٹ کا نام دیں جس کے لگیچرز کی ویلیوز مطلوب ہوں تو یہ خود انحصار اطلاقیہ ویلیوز پر مبنی لسٹیں جنریٹ کر دے اگر ایسا ہو جائے تو یہ آئندہ فونٹ سازی میں استعمال ہونے والا ایک مستقل ٹول بن جائے گا اور ہم سب آپ کو دعائیں دیتے رہیں گے۔
     
    • زبردست زبردست × 3
    • متفق متفق × 2
    • پسندیدہ پسندیدہ × 1
    • دوستانہ دوستانہ × 1
  12. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    شکریہ جناب! دراصل convex hull والے آئیڈیے کے اصل مؤجد محترمی ابن سعید ہیں :)
    اسکو مزید بہتر کر کے ہزاروں ترسیموں پہ عملی طور پر اپلائی کرنے کا کریڈٹ بہرحال ذیشان بھائی کو جاتا ہے۔

    ضرورت اپنی اپنی۔ انڈیزائن چونکہ پرنٹ پبلشنگ کا بے تاج بادشاہ ہے تو وہاں یہ کام ایک پلگ ان کی صورت میں زیادہ بہتر انداز میں ہو سکتاہے۔ جبکہ ہمارا طریقہ یونی ورسلی ہر جگہ اپلائی ہوگا۔
     
    • پسندیدہ پسندیدہ × 2
  13. دوست

    دوست محفلین

    مراسلے:
    13,081
    جھنڈا:
    Germany
    موڈ:
    Fine
    اگر یہ الگورتھم باہر نہیں بھی لکھے جا سکتے یا میٹ لیب کے اندرونی فیچرز کے استعمال کی وجہ سے کم سے کم لائنوں میں زیادہ سے زیادہ نتائج دے رہے ہیں جو کسی اور پروگرامنگ زبان میں ممکن نہیں تو ٹیوٹوریل میں ان کو میٹ لیب میں رن کرنے کا طریقہ تو شامل ہو ہی سکتا ہے۔ لیکن اس کے لیے میٹ لیب کا مفت ہونا ضروری ہے تاکہ ہر کوئی بلا رکاوٹ اسے ڈاؤنلوڈ تو کر لے۔ لیکن یہ مفت لگ نہیں رہا۔ اور اس کا اوپن سورس متبادل یقیناً اس جیسا کام نہیں کر پائے گا۔ اگر کرے بھی تو اس کا کام کرنے کا طریقہ اس سے مختلف ہو گا۔ فوٹو شاپ کا متبادل گمپ، مائیکروسافٹ آفس کا متبادل اوپن/لبرے آفس اور اس جیسے کئی مفت متبادل ڈھونڈنے کے حوالے سے یہ ذاتی تجربہ ہے کہ ایک تجارتی سافٹویئر کا آزاد اور مفت متبادل کبھی بھی اس کا سو فیصد متبادل نہیں ہوتا۔
     
    آخری تدوین: ‏ستمبر 2, 2015
    • متفق متفق × 2
  14. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    مفتی سے زیادہ بڑی رکاوٹ اسکا حجم ہے۔ ہم نے کچھ ماہ قبل convex hull پر تجربات کے سلسلہ میں اسے ڈاؤنلوڈ کیا تھا تو یہ بڑے آرام سے 6 سے 7 گیگا بائٹ لے اڑا تھا :)
    کم از کم پاکستان کی حد تک اسے عام ڈاؤنلوڈ کرنا مشکل ہوگا۔۔۔
     
    • پسندیدہ پسندیدہ × 1
    • متفق متفق × 1
    • غمناک غمناک × 1
  15. سید ذیشان

    سید ذیشان محفلین

    مراسلے:
    7,417
    موڈ:
    Asleep
    اصل حرف
    [​IMG]


    اس کی اونچائی ابتدا اور آخر سے

    [​IMG]
     
    • زبردست زبردست × 3
    • معلوماتی معلوماتی × 2
  16. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    یہاں یہ اضافہ کر دوں کہ تصویر میں ہر DOT سے مراد x اسکیل پر 100 پکسل کا فرق ہے۔ یعنی سبز ڈاٹس بائیں سے دائیں کی اونچائی جبکہ سرخ ڈاٹس دائیں سے بائیں کی اونچائی ماپتے ہیں۔
     
    • معلوماتی معلوماتی × 2
  17. آصف اثر

    آصف اثر معطل

    مراسلے:
    3,060
    جھنڈا:
    Pakistan
    موڈ:
    Busy
    عام سے مراد عوام؟
    یعنی فونٹ استعمال کرنے والوں کو بھی اسے ڈاؤنلوڈ کرنا پڑے گا؟
     
    • پر مزاح پر مزاح × 1
  18. سید ذیشان

    سید ذیشان محفلین

    مراسلے:
    7,417
    موڈ:
    Asleep
    جو طریقہ آپ کے مطابق کسی نے پیٹنٹ کروایا ہوا ہے ۔ تو اگر ہم اس کا استعمال کریں گے تو پیٹنٹ کے پیسے بھی بھرنے ہوں گے۔ :)
     
    • پر مزاح پر مزاح × 4
  19. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    سب سے پہلے تو نوری نستعلیق ترسیموں کے استعمال کا "پیٹنٹ" ادا کریں ۔ پھر اس والے کو بھی دیکھ لیں گے:
    https://www.google.com/patents/US6829748
     
    • پر مزاح پر مزاح × 4
  20. arifkarim

    arifkarim معطل

    مراسلے:
    29,828
    جھنڈا:
    Norway
    موڈ:
    Happy
    ہمارے کہنے کا مطلب پاکستان میں مقیم فانٹ سازوں کیلئے تھا۔ پاکستان سے باہر تو اسے اتارنا زیادہ مشکل نہیں ہونا چاہئے۔
     
    • متفق متفق × 1

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