একটি RTF ফাইল কি?
মাইক্রোসফ্ট দ্বারা প্রবর্তিত এবং নথিভুক্ত, রিচ টেক্সট ফরম্যাট (RTF) অ্যাপ্লিকেশনগুলির মধ্যে ব্যবহারের জন্য বিন্যাসিত পাঠ্য এবং গ্রাফিক্স এনকোডিংয়ের একটি পদ্ধতি উপস্থাপন করে। ফরম্যাটটি অন্যান্য মাইক্রোসফট পণ্যের সাথে ক্রস-প্ল্যাটফর্ম নথি বিনিময়ের সুবিধা দেয়, এইভাবে আন্তঃঅপারেবিলিটির উদ্দেশ্য পূরণ করে। এই ক্ষমতা এটিকে ওয়ার্ড প্রসেসিং সফ্টওয়্যারগুলির মধ্যে ডেটা স্থানান্তরের একটি আদর্শ করে তোলে এবং তাই, নথি বিন্যাস না হারিয়ে বিষয়বস্তু এক অপারেটিং সিস্টেম থেকে অন্য অপারেটিং সিস্টেমে স্থানান্তর করা যেতে পারে। ফাইল ফর্ম্যাট স্পেসিফিকেশন Microsoft দ্বারা সর্বজনীনের জন্য উপলব্ধ download এবং বিকাশকারীর দৃষ্টিকোণ থেকে উল্লেখ করা যেতে পারে।
RTF ফাইল ফরম্যাটের সংক্ষিপ্ত ইতিহাস
RTF file format has underwent several revisions since its publication. Its official version for read/write was published as part of Microsoft Word 3.0 for Macintosh with version 1.0 specifications. The final version of specifications, 1.9.1 was published by Microsoft in Mar 2008. এর পরে স্পেসিফিকেশনে আর কোনো উন্নতি করা হয় না। বর্তমানে, প্রায় সব অপারেটিং সিস্টেমে আরও বেশি বৈশিষ্ট্য সমৃদ্ধ অ্যাপ্লিকেশন রয়েছে যা RTF ফাইল ফরম্যাটের ব্যবহার কমিয়ে/নির্মূল করেছে।
RTF ফাইল ফরম্যাট স্পেসিফিকেশন
RTF serves as a standard of data transfer between word processing software and transfer of content from one operating system to another. This is achieved using control words that were introduced by Microsoft Office Word up through 2007. একটি স্ট্যান্ডার্ড RTF ফাইলে ASCII থাকে যা রিচ টেক্সট এবং নন-ASCII অক্ষর সহ যা উপযুক্ত কোড মানগুলিতে রূপান্তরিত হয়। ওয়ার্ডের নতুন সংস্করণগুলি পূর্ববর্তী সংস্করণগুলির সাথে তৈরি করা RTF ফাইলগুলি পড়তে পারে, যখন পুরানো সংস্করণগুলি নিয়ন্ত্রণ শব্দ এবং গোষ্ঠীগুলিকে তারা বুঝতে পারে না।
RTF এর ভিত্তি বোঝা
RTF ফাইলগুলি 7-বিট ASCII প্লেইন টেক্সট ব্যবহার করে, যার মধ্যে রয়েছে:
শব্দ নিয়ন্ত্রণ করুন
নিয়ন্ত্রণ চিহ্ন, এবং
গ্রুপ।
এইগুলি বোধগম্য পাঠ্য এবং অক্ষর এনকোডিং হিসাবে RTF ডেটা উপস্থাপনের জন্য বিল্ডিং ব্লক হিসাবে কাজ করে।
কন্ট্রোল ওয়ার্ড
এগুলি প্রদর্শনের জন্য অক্ষর চিহ্নিত করতে ব্যবহৃত বিশেষভাবে বিন্যাসিত কমান্ডের প্রতিনিধিত্ব করে এবং 32 অক্ষরের বেশি হতে পারে না। একটি নিয়ন্ত্রণ শব্দ দ্বারা সংজ্ঞায়িত করা হয়:
<ASCII Letter Sequence> //<//Delimiter//> //
প্রতিটি নিয়ন্ত্রণ শব্দ কেস সংবেদনশীল এবং একটি ব্যাকস্ল্যাশ দিয়ে শুরু হয়। ASCII লেটার সিকোয়েন্সে ASCII বর্ণমালা থাকতে পারে (a থেকে z এবং A থেকে Z পর্যন্ত)। দ্য নিয়ন্ত্রণ শব্দের নামের শেষে চিহ্নিত করে এবং নিম্নলিখিতগুলির মধ্যে একটি হতে পারে:
একটি স্থান. এটি শুধুমাত্র একটি নিয়ন্ত্রণ শব্দকে সীমাবদ্ধ করতে কাজ করে এবং পরবর্তী প্রক্রিয়াকরণে উপেক্ষা করা হয়।
একটি সাংখ্যিক সংখ্যা বা একটি ASCII বিয়োগ চিহ্ন, যা নির্দেশ করে যে একটি সংখ্যাসূচক প্যারামিটার নিয়ন্ত্রণ শব্দের সাথে যুক্ত। পরবর্তী ডিজিটাল সিকোয়েন্সটি ASCII ডিজিট (সাধারণত অন্য একটি নিয়ন্ত্রণ শব্দ যা ব্যাকস্ল্যাশ দিয়ে শুরু হয়) ছাড়া অন্য কোনো অক্ষর দ্বারা সীমাবদ্ধ করা হয়। প্যারামিটারটি একটি ধনাত্মক বা ঋণাত্মক দশমিক সংখ্যা হতে পারে। সংখ্যার মানগুলির পরিসর নামমাত্র –32768 থেকে 32767 পর্যন্ত, অর্থাৎ, একটি স্বাক্ষরিত 16-বিট পূর্ণসংখ্যা। অল্প সংখ্যক নিয়ন্ত্রণ শব্দ −2,147,483,648 থেকে 2,147,483,647 (32-বিট স্বাক্ষরিত পূর্ণসংখ্যা) পরিসরে মান নেয়। এই নিয়ন্ত্রণ শব্দগুলির মধ্যে রয়েছে \binN, \revdttmN//, \rsidN সম্পর্কিত নিয়ন্ত্রণ শব্দ এবং কিছু ছবির বৈশিষ্ট্য যেমন \bliptagN। এখানে N মানে সংখ্যাসূচক প্যারামিটার। একটি RTF পার্সারকে ঐচ্ছিকভাবে একটি বিয়োগ চিহ্নের আগে 10টি সংখ্যা পর্যন্ত অনুমতি দিতে হবে। যদি ডিলিমিটার একটি স্থান হয়, তাহলে এটি বাতিল করা হয়, অর্থাৎ, এটি পরবর্তী প্রক্রিয়াকরণে অন্তর্ভুক্ত করা হয় না।
একটি অক্ষর বা একটি অঙ্ক ছাড়া অন্য কোনো অক্ষর। এই ক্ষেত্রে, সীমাবদ্ধ অক্ষর নিয়ন্ত্রণ শব্দটি বন্ধ করে দেয় এবং নিয়ন্ত্রণ শব্দের অংশ নয়। যেমন একটি ব্যাকস্ল্যাশ “", যার অর্থ একটি নতুন নিয়ন্ত্রণ শব্দ বা একটি নিয়ন্ত্রণ প্রতীক অনুসরণ করে।
কন্ট্রোল সিম্বল
একটি কন্ট্রোল চিহ্ন একটি বিশেষ ঘটনার প্রতিনিধিত্ব করে যার বিষয়বস্তুর উপর নির্ভর করে নির্দিষ্ট অর্থ রয়েছে। এটিতে একটি ব্যাকস্ল্যাশ থাকে যার পরে একটি বিশেষ অক্ষর (অ-বর্ণানুক্রমিক অক্ষর) থাকে এবং এর কোনো সীমানা নেই।
গ্রুপ
একটি গ্রুপ টেক্সট, নিয়ন্ত্রণ শব্দ, বা বন্ধনী ({ }) মধ্যে আবদ্ধ নিয়ন্ত্রণ চিহ্ন নিয়ে গঠিত হতে পারে। ওপেনিং ব্রেস ({) গ্রুপের শুরু নির্দেশ করে এবং ক্লোজিং ব্রেস (}) গ্রুপের শেষ নির্দেশ করে। প্রতিটি গ্রুপ গ্রুপ দ্বারা প্রভাবিত পাঠ্য এবং সেই পাঠ্যের বিভিন্ন বৈশিষ্ট্য নির্দিষ্ট করে।
RTF ফাইল স্ট্রাকচার
একটি RTF ফাইলের নিম্নলিখিত স্ট্যান্ডার্ড সিনট্যাক্স রয়েছে:
মাইক্রোসফ্ট দ্বারা প্রবর্তিত এবং নথিভুক্ত, রিচ টেক্সট ফরম্যাট (RTF) অ্যাপ্লিকেশনগুলির মধ্যে ব্যবহারের জন্য বিন্যাসিত পাঠ্য এবং গ্রাফিক্স এনকোডিংয়ের একটি পদ্ধতি উপস্থাপন করে। ফরম্যাটটি অন্যান্য মাইক্রোসফট পণ্যের সাথে ক্রস-প্ল্যাটফর্ম নথি বিনিময়ের সুবিধা দেয়, এইভাবে আন্তঃঅপারেবিলিটির উদ্দেশ্য পূরণ করে। এই ক্ষমতা এটিকে ওয়ার্ড প্রসেসিং সফ্টওয়্যারগুলির মধ্যে ডেটা স্থানান্তরের একটি আদর্শ করে তোলে এবং তাই, নথি বিন্যাস না হারিয়ে বিষয়বস্তু এক অপারেটিং সিস্টেম থেকে অন্য অপারেটিং সিস্টেমে স্থানান্তর করা যেতে পারে। ফাইল ফর্ম্যাট স্পেসিফিকেশন Microsoft দ্বারা সর্বজনীনের জন্য উপলব্ধ download এবং বিকাশকারীর দৃষ্টিকোণ থেকে উল্লেখ করা যেতে পারে।
RTF হেডার
একটি RTF হেডারে নিম্নলিখিত উপস্থাপনা আছে।
ক্ষেত্র | বর্ণনা |
---|---|
<header> | \rtf1\fbidis? <character set> <from> ? <deffont> <deflang> <fonttbl> ? <filetbl> ? <colortbl> ? <stylesheet> ? <stylerestrictions> ? <listtables> ? <revtbl> ? <rsidtable> ? <mathprops> ? <generator> ? |
হেডার টেবিলগুলি বিদ্যমান থাকলে এই ক্রমে উপস্থিত হওয়া আবশ্যক৷ RTF ফাইলে ফন্ট, শৈলী, পর্দার রঙ, ছবি, পাদটীকা, মন্তব্য (টীকা), শিরোনাম এবং ফুটার, সারাংশ তথ্য, ক্ষেত্র, বুকমার্ক, নথি-, বিভাগ-, অনুচ্ছেদ- এবং অক্ষর-বিন্যাস বৈশিষ্ট্য, গণিত, ছবি, এবং বস্তু। যদি ফন্ট, ফাইল, শৈলী, রঙ, পুনর্বিবেচনা চিহ্ন এবং সারাংশ-তথ্য গোষ্ঠী এবং নথি-বিন্যাস বৈশিষ্ট্যগুলি ফাইলটিতে অন্তর্ভুক্ত করা হয়, তবে সেগুলি অবশ্যই RTF শিরোনামে উপস্থিত হতে হবে, যা RTF বডির আগে। যদি কোন গ্রুপের বিষয়বস্তু ব্যবহার না করা হয় তবে গ্রুপটি বাদ দেওয়া যেতে পারে। অন্য গ্রুপে সংজ্ঞায়িত বৈশিষ্ট্যগুলি ব্যবহার করে এমন যে কোনও গোষ্ঠী অবশ্যই সেই বৈশিষ্ট্যগুলিকে সংজ্ঞায়িত করে এমন গোষ্ঠীর পরে উপস্থিত হতে হবে। উদাহরণস্বরূপ, রঙ এবং ফন্ট বৈশিষ্ট্য শৈলী গোষ্ঠীর আগে থাকা আবশ্যক।
RTF সংস্করণ
একটি RTF নথি এই ছয়টি অক্ষর দিয়ে শুরু করতে হবে:
{\rtf1
যেখানে 1 RTF সংস্করণ নম্বর দেখায়।
অক্ষর সেট
{\rtf1 এর পরে, নথিটি ঘোষণা করবে যে এটি কোন অক্ষর সেট ব্যবহার করে। একটি অক্ষর সেট ঘোষণা করার উপায় হল এই কমান্ডগুলির একটির সাথে:
\ansi
- নথিটি ANSI অক্ষর সেটে রয়েছে, যা কোড পৃষ্ঠা 1252 নামেও পরিচিত, সাধারণ MSWindows অক্ষর সেট।
\mac
- নথিটি MacAscii অক্ষর সেটে রয়েছে, ম্যাক OS এর পুরানো (প্রাক-10) সংস্করণের অধীনে স্বাভাবিক অক্ষর সেট৷
\pc
- ডকুমেন্টটি ডস কোড পৃষ্ঠা 437-এ রয়েছে, MS-DOS-এর জন্য ডিফল্ট অক্ষর সেট৷ ভাল পেশী-স্মৃতি সহ টাইপিস্টরা মনে রাখবেন যে এটি এমন একটি অক্ষর সেট যা এখনও Alt সাংখ্যিক কোডগুলি ব্যাখ্যা করার জন্য ব্যবহৃত হয়—অর্থাৎ, আপনি যখন Alt চেপে ধরেন এবং সংখ্যাসূচক কীপ্যাডে 130 টাইপ করেন, এটি একটি é তৈরি করে, কারণ অক্ষর CP437-এ 130 হল একটি é। CP437 এই দিনগুলি দেখে এটাই একমাত্র ব্যবহার।
\pca
- নথিটি DOS কোড পৃষ্ঠা 850-এ রয়েছে, এটি MS-DOS বহুভাষিক কোড পৃষ্ঠা নামেও পরিচিত।
ফন্ট কমান্ড
অক্ষর সেট সংজ্ঞা \deffN
কমান্ড দ্বারা অনুসরণ করা হয়। এটি সংজ্ঞায়িত করে যে ফন্ট নম্বর N হল এই নথির জন্য ডিফল্ট ফন্ট। ফন্ট নম্বর N ফন্ট টেবিল থেকে উল্লেখ করা হয়. কমান্ড \deffN
প্রযুক্তিগতভাবে ঐচ্ছিক, তবে এটি একটি সাধারণ প্রোলগ হিসাবে নিরাপদে থাকা উচিত যেমন নিম্নলিখিত পিক ফন্ট 0 ডিফল্ট ফন্ট হিসাবে।
{\rtf1\ansi\deff0
ফন্ট টেবিল
একটি নথিতে ব্যবহার করা যেতে পারে এমন সমস্ত ফন্ট একটি ফন্ট টেবিলে তালিকাভুক্ত করা হয় যেখানে প্রতিটি ফন্ট একটি ফন্ট নম্বর দ্বারা প্রতিনিধিত্ব করা হয়। নথিতে একটি ফন্ট টেবিল থাকতে হবে যদিও কিছু প্রোগ্রাম এটি ছাড়া কাজ করবে।
একটি ফন্ট টেবিলের সিনট্যাক্স হল {\fonttbl //…declarations//…}, যেখানে প্রতিটি ঘোষণার এই মৌলিক সিনট্যাক্স রয়েছে:
{\fnumber\familycommand ফন্টের নাম;}
চারটি ঘোষণা সহ একটি ফন্ট টেবিল নিম্নরূপ:
{\fonttbl
{\f0\froman Times;}
{\f1\fswiss Arial;}
{\f2\fmodern Courier New;}
}
সেই ফন্ট টেবিলের সাথে একটি নথিতে, {\f2 stuff}
কুরিয়ার নিউ-এ স্টাফ প্রিন্ট করবে। একটি ফন্ট একটি নথিতে ব্যবহার করা যাবে না যতক্ষণ না এটি ফন্ট টেবিলে তালিকাভুক্ত করা হয়।
নথির শেষ
প্রতিটি RTF নথি একটি } দিয়ে শেষ করতে হবে, { যেটি নথির প্রথম অক্ষর দ্বারা খোলা গ্রুপটি বন্ধ করতে হবে৷ কোনো কিছুই চূড়ান্ত } অনুসরণ করতে পারে না, সম্ভবত একটি নতুন লাইন ছাড়া।