वेब ओपन फ़ॉन्ट फ़ॉर्मेट (.woff)

W3C স্ট্যান্ডার্ড

ওয়েব ওপেন ফন্ট ফরম্যাট (WOFF) হল ডব্লিউ৩সি (W3C) দ্বারা অনুমোদিত ঐতিহাসিক প্রথম প্রজন্মের ওপেন স্ট্যান্ডার্ড ওয়েব ফন্ট ফরম্যাট, যা zlib কম্প্রেশন এবং XML লাইসেন্সিং মেটাডেটা সহ স্ট্যান্ডার্ড TrueType বা OpenType ফন্টগুলোকে মোড়কজাত করে।

ইনস্পেক্ট ও মেটাডেটা

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে WOFF ফাইল শনাক্ত করে:

এখানে ফাইল নির্বাচন করুন বা ড্রপ করুন

১০০% প্রাইভেট ব্রাউজার-মধ্যস্থ কনভার্শন - ফাইল কখনো আপনার ডিভাইস ছেড়ে যায় না

অথবা পেস্ট করুন Ctrl+V
জিরো-নেটওয়ার্ক-ট্রান্সমিশন প্রাইভেসি গ্যারান্টি: বাহ্যিক সার্ভারে ০ বাইট আপলোড করা হয়েছে। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজার স্যান্ডবক্সে স্থানীয়ভাবে ঘটেছে।

বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে WOFF ফাইল শনাক্ত করে:

হেক্স সিগনেচার (অফসেট 0):

77 4F 46 46

ASCII রিপ্রেজেন্টেশন: wOFF

স্ট্যান্ডার্ডাইজেশন: W3C Recommendation (2012)

প্রযুক্তিগত বৈশিষ্ট্য

কন্টেইনার আর্কিটেকচার44-byte WOFF header followed by table directory, zlib-compressed table data, optional extended metadata, and private data
কম্প্রেশনDeflate (zlib) compression applied to each individual font table
বাইট এন্ডিয়াননেসBig-Endian (SFNT standard)
কালার স্পেসInherited from underlying font tables
চ্যানেল ও কাঠামোTrueType ('glyf') or PostScript ('CFF ') glyph outlines, metrics, and typographic features
সর্বোচ্চ মাত্রাUp to 65,535 glyphs per font file
স্বচ্ছতাInherited from underlying font format
স্ট্রিমিং ও প্রোগ্রেসিভTable-by-table decompression enables streaming font loading

টেকনিক্যাল তুলনা ম্যাট্রিক্স: WOFF বনাম প্রতিযোগীগণ

প্রযুক্তিগত বৈশিষ্ট্যWOFF (বর্তমান)WOFF2TTFOTF
কম্প্রেশন কোডেকপ্রতি টেবিল অনুযায়ী Deflate (zlib)টেবিল প্রিপ্ৰসেসিং সহ Brotliআনকম্প্রেসড SFNTআনকম্প্রেসড SFNT
ম্যাজিক সিগনেচারwOFF (0x77 0x4F 0x46 0x46)wOF2 (0x77 0x4F 0x46 0x32)0x00 0x01 0x00 0x00OTTO (0x4F 0x54 0x54 0x4F)
আপেক্ষিক ফাইলের সাইজTTF এর চেয়ে প্রায় ৪০% ছোটTTF এর চেয়ে প্রায় ৬০% ছোটবেসলাইন স্ট্যান্ডার্ড (১০০%)বেসলাইন স্ট্যান্ডার্ড (১০০%)
লক্ষ্য পরিবেশলিগ্যাসি ওয়েব ব্রাউজার (IE9+, Safari 5+)আধুনিক ওয়েব ব্রাউজার (ইউনিভার্সাল)ডেস্কটপ অপারেটিং সিস্টেমডেস্কটপ পাবলিশিং ও প্রিন্ট

সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড

ব্রাউজার কনসোল সতর্কতা: 'Failed to download font: OTS parsing error'।

মূল কারণ: ঘোষিত আনকম্প্রেসড টেবিলের দৈর্ঘ্যের সাথে অমিল অথবা ক্ষতিগ্রস্ত zlib স্ট্রিম।

পুনরুদ্ধার: File2File Font Converter ব্যবহার করে ফন্ট টেবিলগুলো পুনরায় কম্প্রেস করুন বা WOFF2-এ রূপান্তর করুন।

নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর

এক্সপ্লয়েট পেলোড ব্লক করতে ওয়েব ব্রাউজারগুলো ওপেনটাইপ স্যানিটাইজার (OTS) ব্যবহার করে অবিশ্বাসযোগ্য ওয়েব ডোমেন থেকে ডাউনলোড করা WOFF ফাইলগুলো পার্স করে।

পরিচিত অ্যাটাক ভেক্টর

  • ক্ষতিগ্রস্ত ফন্ট টেবিল চাঙ্কের zlib ডিকম্প্রেশনের সময় বাফার ওভার-রিড।
  • অমিল টেবিল দৈর্ঘ্যের ক্ষেত্রগুলো ফন্ট রেন্ডারারগুলোতে হিপ বাফার ওভারফ্লো ঘটাচ্ছে।
  • ফন্ট টেবিল এক্সপানশনের সময় মেমরি অবসানের মাধ্যমে পরিষেবা অস্বীকার (Denial of service)।

প্রতিরক্ষামূলক সেরা অনুশীলন:

ঐতিহাসিক উৎপত্তি ও মাইলফলক

2018উন্নত ব্রটলিন (Brotli) কম্প্রেশনের কারণে পছন্দের ওয়েব ফন্ট স্ট্যান্ডার্ড হিসেবে WOFF2 দ্বারা প্রতিস্থাপিত হয়।
2012W3C আনুষ্ঠানিকভাবে WOFF 1.0-কে একটি আনুষ্ঠানিক ওয়েব স্ট্যান্ডার্ড রিকমেন্ডেশন হিসেবে প্রকাশ করে।
2009হেনরিক রাইডগার্ড, তাল লেমিং এবং জোনাথন কিউ ওয়েব ফন্ট লাইসেন্সিং সংক্রান্ত উদ্বেগ দূর করতে WOFF নির্দিষ্ট করেন।

প্রধান সুবিধাসমূহ ও গুণাবলী

  • কাঁচা আনকম্প্রেসড TTF বা OTF ফাইলের তুলনায় ওয়েব ফন্টের ফাইলের আকার ৩০% থেকে ৫০% কমিয়ে দেয়।
  • ২০১১ সাল থেকে প্রকাশিত প্রতিটি ডেস্কটপ এবং মোবাইল ওয়েব ব্রাউজারের সাথে ইউনিভার্সাল ব্যাকওয়ার্ড কম্প্যাটিবিলিটি রয়েছে।
  • ফন্ট লাইসেন্সিং, লেখকের ক্রেডিট এবং ফাউন্ড্রি কপিরাইট তথ্যের জন্য একটি ঐচ্ছিক XML মেটাডেটা ব্লক অন্তর্ভুক্ত করে।

কারিগরি সীমাবদ্ধতা ও অসুবিধা

  • WOFF2 দ্বারা প্রতিস্থাপিত, যা ব্রটলিন অ্যালগরিদম ব্যবহার করে প্রায় ৩০% ছোট কম্প্রেশন করে।
  • TTF/OTF-এ রূপান্তর করা ছাড়া সরাসরি ডেস্কটপ অপারেটিং সিস্টেমে (Windows/Mac) ইনস্টল করা যায় না।
  • পুরোনো zlib কম্প্রেশন অ্যালগরিদম আধুনিক এন্ট্রপি এনকোডারগুলির মতো দক্ষ নয়।

আকর্ষণীয় কারিগরি তথ্য

  • WOFF 1.0-এর ম্যাজিক বাইটগুলো হলো 'wOFF' (0x77 0x4F 0x46 0x46), অন্যদিকে WOFF 2.0 ব্যবহার করে 'wOF2'।
  • টাইপ ফাউন্ড্রিগুলো WOFF তৈরি হওয়ার পরেই ওয়েবে তাদের ফন্টগুলোর অনুমতি দিতে সম্মত হয়েছিল, কারণ এর বিশেষায়িত কন্টেইনারটি পাইরেট করা ডেস্কটপ ফন্ট থেকে ওয়েব ফন্টগুলোকে আলাদা করেছিল।
  • অফিসিয়াল W3C রিকমেন্ডেশন হওয়ার আগে WOFF মূলত ২০১০ সালে Firefox 3.6-এ প্রয়োগ করা হয়েছিল।

সচরাচর জিজ্ঞাসಿತ টেকনিক্যাল প্রশ্নাবলি

WOFF এবং WOFF2-এর মধ্যে পার্থক্য কী?

WOFF zlib কম্প্রেশন ব্যবহার করে, অন্যদিকে WOFF2 গুগলের নতুন ব্রটলি (Brotli) অ্যালগরিদম এবং টেবিল ট্রান্সফর্ম ব্যবহার করে, ফলে এর ফাইলগুলো WOFF-এর চেয়ে প্রায় 30% ছোট হয়।

ডেস্কটপে ব্যবহারের জন্য আমি কীভাবে একটি WOFF ফন্টকে TTF বা OTF-এ রূপান্তর করতে পারি?

আপনি সরাসরি আপনার ওয়েব ব্রাউজারে File2File.app ব্যবহার করে কয়েক সেকেন্ডের মধ্যে WOFF ফাইলগুলোকে ইনস্টলযোগ্য ডেস্কটপ TTF বা OTF ফন্টে রূপান্তর করতে পারেন।

আধুনিক ওয়েবসাইটে কি আমার এখনও WOFF 1.0 প্রয়োজন?

না। সমস্ত আধুনিক ব্রাউজার নেটিভভাবে WOFF2 সমর্থন করে। ইন্টারনেট এক্সপ্লোরার-এর মতো পুরনো লিগ্যাসি ব্রাউজারগুলোকে সমর্থন করার প্রয়োজন হলেই কেবল WOFF 1.0 দরকার হয়।