একটি TTF ফাইল কি?
.ttf এক্সটেনশন সহ একটি ফাইল TrueType স্পেসিফিকেশন ফন্ট প্রযুক্তির উপর ভিত্তি করে ফন্ট ফাইল উপস্থাপন করে। এটি প্রাথমিকভাবে Mac OS এর জন্য Apple Computer, Inc দ্বারা ডিজাইন এবং চালু করা হয়েছিল এবং পরে উইন্ডোজ ওএসের জন্য মাইক্রোসফ্ট দ্বারা গৃহীত হয়েছিল। TrueType ফন্ট কম্পিউটার স্ক্রীন এবং প্রিন্টারে রেজোলিউশনের উপর কোন নির্ভরতা ছাড়াই সর্বোচ্চ মানের প্রদর্শন প্রদান করে। ফন্ট ব্যবহার করে সমস্ত আধুনিক অ্যাপ্লিকেশন TTF ফাইলগুলির সাথে কাজ করতে সক্ষম। TTF ফন্ট ফাইলগুলি ইন্টারনেটে অবাধে উপলব্ধ এবং অন্যান্য ফন্ট ফাইল ফরম্যাটে যেমন OTF এবং WOFF-এ রূপান্তর করা যেতে পারে।
সংক্ষিপ্ত ইতিহাস
Designed by Apply Computer, Inc in 1980s for MacOS, the TTF font format was aimed at resolving some technical limitations by Adobe’s Type 1 format. Apple included support for TrueType fonts in Mac in 1991. TTF ফন্টের পিছনে ডিজাইনের উদ্দেশ্য ছিল সঞ্চয়স্থান এবং প্রক্রিয়াকরণে দক্ষতা এবং সম্প্রসারণযোগ্যতা। এই এক্সটেনসিবিলিটির উপর ভিত্তি করে, বিদ্যমান ফন্টগুলিকে TrueType ফরম্যাটে রূপান্তর করা যেতে পারে।
অ্যাপল মাইক্রোসফ্টকে ট্রু টাইপ লাইসেন্স দিতে সম্মত হওয়ার পর মাইক্রোসফ্ট এপ্রিল 1992 সালে উইন্ডোজ 3.1-এ প্রথম ট্রুটাইপ ফন্ট ব্যবহার করে। এটি রাস্টারাইজেশন মেকানিজম উন্নত করেছে, এবং এর দক্ষতা এবং কর্মক্ষমতা উন্নত করেছে।
ট্রু টাইপ ফাইল ফরম্যাট স্পেসিফিকেশন
একটি TrueType ফন্ট ফাইল হল একটি বাইনারি ফাইল যা সংযুক্ত টেবিলের একটি ক্রম নিয়ে গঠিত। প্রতিটি টেবিল শব্দের একটি ক্রম এবং এর একটি নাম রয়েছে যা ট্যাগ
নামে পরিচিত। প্রতিটি ট্যাগ uint32 ডেটা টাইপের এবং চারটি অক্ষর নিয়ে গঠিত। ফাইলের প্রথম টেবিলটি হল ফন্ট ডিরেক্টরি যা ফন্ট ফাইলের অন্যান্য টেবিলে অ্যাক্সেস দেয়। ফন্ট ডাটা ফন্ট ডিরেক্টরি টেবিলের পরে অনুসরণ করা অন্যান্য টেবিলে রয়েছে। যেহেতু প্রতিটি টেবিল তার ট্যাগ দ্বারা অ্যাক্সেসযোগ্য, টেবিলগুলি ফাইলের যেকোনো ক্রমে প্রদর্শিত হতে পারে।
প্রয়োজনীয় টেবিল এবং তাদের ট্যাগের নাম নিম্নলিখিত টেবিলে দেখানো হয়েছে।
ট্যাগ | টেবিল |
---|---|
‘cmap’ | অক্ষর থেকে গ্লিফ ম্যাপিং |
‘glyf’ | গ্লাইফ ডেটা |
‘মাথা’ | ফন্ট হেডার |
‘হিয়া’ | অনুভূমিক হেডার |
‘hmtx’ | অনুভূমিক মেট্রিক্স |
‘লোকা’ | অবস্থানের সূচী |
‘maxp’ | সর্বাধিক প্রোফাইল |
‘নাম’ | নামকরণ |
‘পোস্ট’ | পোস্টস্ক্রিপ্ট |
তথ্যের ধরণ
ট্রু টাইপ ফন্টগুলি নিম্নলিখিত টেবিলে তালিকাভুক্ত স্ট্যান্ডার্ড পূর্ণসংখ্যা এবং অতিরিক্ত ডেটা প্রকারগুলি ব্যবহার করে।
ডেটা টাইপ | বিবরণ |
---|---|
শর্টফ্র্যাক | 16-বিট স্বাক্ষরিত ভগ্নাংশ |
স্থির | 16.16-বিট স্বাক্ষরিত নির্দিষ্ট-বিন্দু নম্বর |
FWord | 16-বিট স্বাক্ষরিত পূর্ণসংখ্যা যা FUnits-এ একটি পরিমাণ বর্ণনা করে, এম স্পেসে সবচেয়ে ছোট পরিমাপযোগ্য দূরত্ব। |
uFWord | 16-বিট স্বাক্ষরবিহীন পূর্ণসংখ্যা যা FUnits-এ একটি পরিমাণ বর্ণনা করে, এম স্পেসে সবচেয়ে ছোট পরিমাপযোগ্য দূরত্ব। |
F2Dot14 | 16-বিট স্বাক্ষরিত নির্দিষ্ট সংখ্যা সহ নিম্ন 14 বিট ভগ্নাংশের প্রতিনিধিত্ব করে। |
longDateTime | The long internal format of a date in seconds since 12:00 midnight, January 1, 1904. It is represented as a signed 64-bit integer. |
ফন্ট ডিরেক্টরি
TrueType ফন্টের প্রথম টেবিলটি হল ফন্ট ডিরেক্টরি যা অন্যান্য টেবিলে ডেটা অ্যাক্সেস করার জন্য প্রয়োজনীয় তথ্যে অ্যাক্সেস প্রদান করে। এটি আরও গঠিত:
- অফসেট সাবটেবল’ - ফন্টে টেবিলের রেকর্ড রাখে এবং ডিরেক্টরিতে প্রতিটি টেবিল অ্যাক্সেস করার জন্য অফসেট তথ্য প্রদান করে
টেবিল ডিরেক্টরি
- ফন্টে প্রতিটি টেবিলের জন্য এন্ট্রি রয়েছে
অফসেট সাবটেবিল
অফসেট সাবটেবিল নীচে দেখানো হয়েছে.
প্রকার | নাম | বিবরণ |
---|---|---|
uint32 | স্কেলার টাইপ | এই ফন্ট রাস্টারাইজ করার জন্য OFA স্ক্যালারকে নির্দেশ করার জন্য একটি ট্যাগ; আরও তথ্যের জন্য নীচের স্কেলার টাইপের নোটটি দেখুন। |
uint16 | numTables | টেবিলের সংখ্যা |
uint16 | অনুসন্ধান রেঞ্জ | (সর্বাধিক শক্তি 2 <= সংখ্যা টেবিল)*16 |
uint16 | এন্ট্রি নির্বাচক | log2(সর্বাধিক শক্তি 2 <= সংখ্যা টেবিল) |
uint16 | রেঞ্জশিফ্ট | numTables*16-সার্চ রেঞ্জ |
টেবিল ডিরেক্টরি
টেবিল ডিরেক্টরিটি অফসেট সাবটেবলের ঠিক পরে আসে। এর গঠন নিচের টেবিলে দেখানো হয়েছে।
প্রকার | নাম | বিবরণ |
---|---|---|
uint32 | ট্যাগ | 4-বাইট শনাক্তকারী |
uint32 | চেকসাম | এই টেবিলের জন্য চেকসাম |
uint32 | অফসেট | sfnt এর শুরু থেকে অফসেট |
uint32 | দৈর্ঘ্য | বাইটে এই টেবিলের দৈর্ঘ্য (প্রকৃত দৈর্ঘ্য প্যাডেড দৈর্ঘ্য নয়) |
একটি ফন্ট ফাইলের প্রতিটি টেবিলের নিজস্ব টেবিল ডিরেক্টরি এন্ট্রি থাকতে হবে। একটি টেবিলের এন্ট্রি ট্যাগ দ্বারা আরোহী ক্রমে বাছাই করা আবশ্যক.