জন ওয়ারনকের PostScript ও PDF সম্পর্কে সরল ব্যাখ্যা — কীভাবে এগুলো ডেস্কটপ প্রকাশনা, প্রিন্টিং এবং আধুনিক ডকুমেন্ট ওয়ার্কফ্লোকে নির্ভরযোগ্য করে তুললো।

PostScript ও PDF–এর আগে, “একটি নথি পাঠানো” প্রায়ই একটা সাজেশন পাঠানোর মতোই ছিল। একই পেজ কম্পিউটার, প্রিন্টার, ইনস্টল থাকা ফন্ট বা এমনকি গন্তব্যের কাগজ-হ্যান্ডলিং হার্ডওয়্যার অনুযায়ী ভিন্নভাবে দেখাতে পারত।
কিছু কারণে নথিগুলো বিশেষভাবে ভঙ্গুর ছিল:
এই সমস্যাটিই জন ওয়ারনক সমাধানের চেষ্টা করেছিলেন: নির্ভরযোগ্য পেজ আউটপুট। “প্রায় ঠিক” নয়, বরং পূর্বনির্ধারিত — যাতে কোনো সিস্টেমে ডিজাইন করা পেজটি অন্য সিস্টেমে একই আকৃতি, স্পেসিং এবং টাইপোগ্রাফি নিয়ে প্রিন্ট হয়।
সহজ রাখার জন্য:
এই গাইডটি অ-প্রাযুক্তিক পাঠকদের জন্য যারা আধুনিক নথির পিছনের গল্প জানতে চান: কিভাবে প্রকাশনা ও প্রিন্টিং নির্ভরযোগ্য হল, কেন “save as PDF” বেশিরভাগ সময় কাজ করে, এবং PostScript ও PDF আজও কীভাবে ফাইলগুলোকে সার্বজনীনভাবে আচরণ করাতে শেখায়।
জন ওয়ারনক ছিলেন একজন কম্পিউটার বিজ্ঞানী, যিনি তার প্রাথমিক ক্যারিয়ারের অনেকটা সময় এমন একটি অত্যন্ত ব্যবহারিক সমস্যার ওপর ভাবতেন: কিভাবে একটি পেজ এমনভাবে বর্ণনা করা যায় যাতে তা প্রতিবার, প্রতিটি মেশিনে একইভাবে প্রিন্ট হয়।
অ্যাডোবি গঠনের আগে তিনি গবেষণামূলক পরিবেশে কাজ করতেন যেখানে ধারণাগুলো পণ্য হওয়ার অনেক আগে পরীক্ষা করা হতো। 1970–এর দশকে Xerox PARC–এ দলগুলো নেটওয়ার্কযুক্ত প্রিন্টার, গ্রাফিক্যাল ইন্টারফেস এবং জটিল পেজ উপস্থাপনার উপায় নিয়ে পরীক্ষা-নিরীক্ষা করছিল। প্রিন্টিং মানে শুধু “টেক্সট প্রিন্টারে পাঠানো” নয়—এটি ফন্ট, লাইন, আকৃতি ও ছবি মিশিয়ে নির্ভরযোগ্যভাবে আউটপুট করা।
মূল সমস্যা ছিল মিসম্যাচ। একটি নথি একটি সিস্টেমে তৈরি হলে স্ক্রিনে ঠিক দেখালেও অন্য ডিভাইসে ভিন্ন রেজোলিউশন, ফন্ট বা সক্ষমতার ফলে প্রিন্টে ভেঙে পড়তে পারত। ব্যবসা, প্রকাশক ও ডিজাইনারদের জন্য সেই অনিয়ম সরাসরি খরচে পরিণত হত: পুনর্মুদ্রণ, বিলম্ব এবং ম্যানুয়াল সমাধান।
ডিভাইস-স্বতন্ত্র আউটপুট মানে আপনি নির্দিষ্ট কোনো প্রিন্টার কিভাবে আঁকবে তা বর্ণনা করছেন না; বরং আপনি পেজে কি আছে তা বর্ণনা করছেন। উদাহরণ: “এই অনুচ্ছেদটি এই ফন্টে এখানে রাখো”, “0.5-পয়েন্ট লাইন আঁকো”, “এই রঙ দিয়ে এই আকৃতি ভরাও।” প্রিন্টার (অথবা অন্য কোনো ইন্টারপ্রেটার) তারপর সেই বর্ণনা নিজের ডট হিসেবে রূপান্তর করে।
ওয়ারনক গবেষণা থেকে দৈনন্দিন টুলে এই পদ্ধতিটিকে নিয়ে যেতে সহায়তা করেন। 1982–এ অ্যাডোবি প্রতিষ্ঠা করে তিনি ও সহকর্মীরা পেজ-ডেসক্রিপশন ধারণাগুলো সফটওয়্যারে প্যাকেজ করলেন যা বিভিন্ন সিস্টেমে চলতে পারে এবং বিভিন্ন প্রিন্টার চালাতে পারে। গুরুত্ব ছিল কোনো একক আবিষ্কার নয়—তবে একটি প্রযুক্তিগত ধারণাকে নির্ভরযোগ্য ব্রিজে পরিণত করা, কম্পিউটার ও প্রিন্টেড পেজের মধ্যে।
PostScript হলো একটি পেজ-ডেসক্রিপশন ভাষা—একটি সম্পূর্ণ পেজ এমনভাবে বর্ণনা করার উপায় যাতে যেকোনো অনুকূল প্রিন্টার তা একইভাবে আঁকতে পারে।
একটি সহজ উপমা: যদি একটি ওয়ার্ড প্রসেসর ফাইল আপনার রান্নাঘরের খসড়ার মতো হয় (সম্পাদনীয়, নোট ও স্টাইলসহ), তাহলে PostScript হচ্ছে সেই রেসিপি যা আপনি পেশাদার শেফকে দিয়ে দিচ্ছেন। এটি বলে না “ভালো করে তৈরি করো”; এটি ঠিক কী রাখা আছে, কোথায় এবং কোন পরিমাণে তা বলে।
PostScript পেজের মূল উপাদানগুলো বর্ণনা করতে পারে:
এটি একটি খুবই লিটারাল ড্রয়িং রোবটকে নির্দেশ দেয় বলে ভাবুন। নির্দেশ একই হলে ফলাফলও একই হওয়া উচিৎ—চাই আউটপুট ডিভাইসটি একটি ডেস্কটপ প্রিন্টার হোক কিংবা উচ্চ-শেষ ইমেজসেটার।
PostScript–এর বড় অগ্রগতির কারণগুলোর মধ্যে একটি হল অধিকাংশই ভেক্টর-ভিত্তিক: এটি গ্রাফিক্সকে গাণিতিকভাবে (রেখা, বক্ররেখা, ভরাট) বর্ণনা করে, পিক্সেলের একটি অসংচলিত গ্রিড হিসেবে নয়।
এর মানে একটি লোগো, হেডলাইন বা চিত্রকে পোস্টারে বড় করা বা বিজনেস কার্ডে ছোট করা যাক—সবসময় ধার থাকে—পিক্সেল “স্ট্রেচ”–এর ফলে ঝাপসা হওয়ার ঝুঁকি নেই।
PostScript একটি ওয়ার্ড প্রসেসর ফরম্যাট নয়। এটি সহযোগিতা, ট্র্যাকড চেঞ্জ বা সহজ রিফ্লো–এর জন্য নয়। এটি একটি ফাইনাল আউটপুট বর্ণনার কাছাকাছি—নির্ভরযোগ্য প্রিন্টিংয়ের জন্য অপ্টিমাইজড।
PostScript–এর আগে, “আপনি যা দেখছেন তাই পাবেন” প্রায়ই অর্থ করত “আপনি যা দেখছেন সেটাই আশা করা হচ্ছে।” অগ্রগতি ছিল একটি শেয়ার করা পদ্ধতি যাতে কম্পিউটার ও প্রিন্টার একই নির্দেশাবলীতে সম্মত হয়।
ডেস্কটপ প্রকাশনা দ্রুত একটি পূর্বানুমেয় চেইন তৈরি করেছিল: লেখালেখি → লেআউট → আউটপুট।
একজন লেখক ওয়ার্ড প্রসেসরে লেখতেন। এক ডিজাইনার সেই টেক্সটটি একটি পেজ লেআউট অ্যাপে ফ্লো করতেন, কলাম, স্পেসিং ও ছবি নির্বাচন করে। তারপর লেআউটটি একটি PostScript প্রিন্টারে (বা সার্ভিস ব্যুরোতে) পাঠানো হতো যেখানে একই পেজ-ডেসক্রিপশন ইন্টারপ্রেট করে চূড়ান্ত পেজ আঁকা হতো।
PostScript পেজটিকে ডিভাইস-স্বতন্ত্রভাবে বর্ণনা করায়—আকৃতি, টেক্সট, অবস্থান এবং বক্ররেখা—প্রিন্টারগুলো আর স্ক্রীনের মতো “অনুমান” করছিল না। তারা একটি নির্ভুল ড্রয়িং নির্দেশাবলী পালন করছিল।
একটি PostScript-সক্ষম প্রিন্টার কার্যত একটি ক্ষুদ্র প্রকাশনা ইঞ্জিন হয়ে উঠল। এটি ভেক্টর গ্রাফিক্স পরিষ্কারভাবে রেন্ডার করতে, উপাদান সঠিকভাবে স্থাপন করতে এবং একটি জব থেকে ধারাবাহিক পেজ আউটপুট দিতে পারে।
এই স্থিতিশীলতা লেআউট সিদ্ধান্তকে বিশ্বাসযোগ্য করে তুলল: যদি একটি হেডলাইন স্ক্রিনে ফিট করে, তা কাগজে ফিট করার সম্ভাবনা অনেক বেশি। এই নির্ভরযোগ্যতাই ব্রোশার, নিউজলেটার, ম্যানুয়াল ও বিজ্ঞাপনের জন্য ডেস্কটপ প্রকাশনাকে ব্যবহারিক করে তুলল।
টাইপোগ্রাফি পেশাদারী প্রকাশনায় কেন্দ্রীয়, এবং PostScript স্কেলযোগ্য আউটলাইন ফন্টকে সমর্থন করত যা বিভিন্ন সাইজে ধারালো প্রিন্ট দেয়।
তবুও ত্রুটি ঘটত:
এই বিপত্তিগুলির মাঝেও PostScript সবচেয়ে বড় অরাজকতার উৎস কমিয়েছিল: প্রিন্টার আর আপনার নথিকে নিজের মতো করে “ব্যাখ্যা” করছিল না—এটি পেজ-ডেসক্রিপশন অনুসরণ করছিল।
বাণিজ্যিক প্রিন্টিং শুধু “ফাইল পাঠাও এবং প্রিন্ট কর” নয়। প্রিপ্রেস হলো সেই ধাপ যেখানে একটি নথি পরীক্ষা, প্রস্তুত এবং এমন কিছুতে রূপান্তর করা হয় যা প্রেস নির্ভরযোগ্যভাবে পুনরুৎপাদন করতে পারে। বড় অগ্রাধিকার হল predictability: একই কাজ আজ, কাল এবং ভিন্ন মেশিনে একইরকম দেখতে হবে।
প্রিন্ট শপগুলো কয়েকটি ব্যবহারিক ফলাফল চেয়েছিল:
এসব চাহিদা সবাইকে এমন ফরম্যাটের দিকে ঠেলে দেয় যা পেজ ডিভাইস-স্বতন্ত্রভাবে বর্ণনা করে। যদি পেজ-ডেসক্রিপশন সম্পূর্ণ হয়—ফন্ট, ভেক্টর, ছবি এবং রঙ নির্দেশ—প্রিন্টার আর “আনুমানিক” করে রেন্ডার করে না।
বহু বছর ধরে সাধারণ প্যাটার্ন ছিল: ডিজাইন অ্যাপটি PostScript জেনারেট করত, এবং প্রিন্ট শপ তা RIP–এর মাধ্যমে চালাত। RIP (Raster Image Processor) হলো সফটওয়্যার/হার্ডওয়্যার যা পেজ-বর্ণনাকে নির্দিষ্ট প্রিন্টার বা ইমেজসেটারের আউটপুট করার যোগ্য পিক্সেল-ভিত্তিক ডেটায় রূপান্তর করে।
এই মধ্যবর্তী ধাপটি গুরুত্বপূর্ণ ছিল কারণ এটি “ব্যাখ্যা” কেন্দ্রিক করত। বিপরীতে, নির্ভরযোগ্যতা চাইলে একজন প্রিন্ট প্রদানকারী জবগুলোকে একটি নিয়ন্ত্রিত RIP সেটআপের মাধ্যমে চালাতে পারত, যা তাদের প্রেস, কাগজ, স্ক্রিনিং পদ্ধতি ও কালি অনুযায়ী টিউন করা হয়েছিল।
যখন predictability লক্ষ্য তখন পুনরাবৃত্তি একটি ব্যবসায়িক সুবিধা হয়ে ওঠে: কম পুনর্মুদ্রণ, কম বিবাদ এবং দ্রুত টার্নঅ্যারাউন্ড—সেই সব জিনিস যা পেশাদার প্রিন্টিং চাহে।
PostScript প্রিন্টিংয়ের জন্য ছিল বড় অগ্রগতি, কিন্তু এটি “প্রতিটি মানুষকে পাঠানোর” মতো একটি ডকুমেন্ট ফরম্যাট হিসেবে তৈরি করা হয়নি। একটি PostScript ফাইল মূলত একটি প্রোগ্রাম যা একটি পেজ বর্ণনা করে। এটি ভাল কাজ করে যখন প্রিন্টারের (অথবা টাইপসেটারের) কাছে সঠিক ইন্টারপ্রেটার আছে, কিন্তু সাধারণ ভাগাভাগি, ভিউ করা বা যে কোনো কম্পিউটারে নির্ভরযোগ্যভাবে খোলা—এসব কাজের জন্য এটি অদক্ষ ছিল।
PDF তৈরি করা হয়েছিল নথিগুলো ব্যবহারযোগ্যভাবে পোর্টেবল করতে: বিতরণ করা সহজ, খুলতে সহজ, এবং রেন্ডারিং–এ পূর্বানুমেয়। লক্ষ্য শুধু “প্রিন্ট হয়” নয়, বরং “সব জায়গায় একইভাবে দেখা যায়”—বিভিন্ন স্ক্রিনে, বিভিন্ন প্রিন্টারে এবং বিভিন্ন অপারেটিং সিস্টেম জুড়ে।
একটি গুরুত্বপূর্ণ পরিবর্তন হলো একটি নথিকে একক প্যাকেজ হিসেবে দেখা। বাহ্যিক উপাদানের ওপর নির্ভর করার বদলে একটি PDF অন্তর্ভুক্ত করতে পারে (অথবা নিয়ন্ত্রিতভাবে রেফারেন্স করতে পারে) যা পেজগুলো পুনরায় তৈরি করতে লাগে:
এই প্যাকেজিংয়ের কারণেই একটি PDF দীর্ঘ সময় পরে ও সঠিক পেজিং, স্পেসিং ও টাইপোগ্রাফিক বিবরণ বজায় রাখতে পারে।
PDF দুটি জগতকেই সংযোগ করে। স্ক্রিন দেখানোর জন্য এটি দ্রুত ডিসপ্লে, সার্চিং, হাইপারলিঙ্ক ও এনোটেশন সমর্থন করে। প্রিন্টের জন্য এটি সঠিক জ্যামিতি বজায় রাখে এবং প্রফেশনাল ওয়ার্কফ্লো প্রয়োজনীয় তথ্য (ফন্ট, স্পট কালার, ট্রিম বক্স ইত্যাদি) বহন করতে পারে। ফল: একটি ফাইল যা ফাইনাল ডকুমেন্টের মত আচরণ করে, কেবল চালানোর মতো নির্দেশাবলীর মতো নয়।
PostScript ও PDF প্রায়ই একই আলোচনায় আসে কারণ উভয়ই পেজ বর্ণনা করে। কিন্তু এগুলো ভিন্ন কাজের জন্য তৈরি।
PostScript হলো একটি পেজ-ডেসক্রিপশন ভাষা—এক সেট নির্দেশাবলী যেমন “এই ফন্ট ব্যবহার করো”, “এই বক্ররেখা আঁকো”, “এই ছবি এখানে বসাও” এবং “নির্দিষ্ট সাইজে প্রিন্ট করো।” একটি PostScript-সক্ষম প্রিন্টার (অথবা RIP) এই নির্দেশগুলো নির্বাহ করে চূড়ান্ত আউটপুট উৎপন্ন করে।
এই কারণেই PostScript ঐতিহাসিকভাবে প্রিন্টিং জগতের সাথে ভালো মানান—এটি কেবল কন্টেন্টের ধারক নয়, এটি কিভাবে পেজ রেন্ডার করা হবে তার নির্দিষ্ট রেসিপি।
PDF একটি ফাইল ফরম্যাট যা একটি নথি দেখা, বিনিময়, এনোটেশন ও আর্কাইভ করার জন্য ধারাবাহিক চেহারা দেয়। PostScript–এর মতো “চালানো” না হয়ে PDF সাধারণত একটি ভিউআরে দেখা হয় (Acrobat, ব্রাউজার, মোবাইল অ্যাপ) এবং প্রিন্টও করা যায়।
প্রায়োগিক ভাষায়: PostScript প্রিন্টারের জন্য নির্দেশ; PDF হলো আপনি পাঠানো ডকুমেন্ট।
PostScript এখনও পেশাদার প্রিন্টিং ও প্রিপ্রেস ওয়ার্কফ্লোতে ব্যাকগ্রাউন্ডে থাকে, বিশেষ করে যেখানে ডেডিকেটেড RIP ও প্রিন্ট সার্ভার ইনকামিং জবগুলি হ্যান্ডেল করে।
PDF হলো ফাইনাল ডকুমেন্ট শেয়ার করার ডিফল্ট: চুক্তি, ম্যানুয়াল, ফর্ম, প্রুফ—কারণ এটি যে কোনো জায়গায় খোলার জন্য সহজ এবং লেআউট সংরক্ষণ করে।
| বিষয় | PostScript | |
|---|---|---|
| কী এটি | একটি ভাষা (ড্রয়িং/প্রিন্টিং নির্দেশাবলী) | একটি ফাইল ফরম্যাট (প্যাকেজ করা নথি) |
| মূল উদ্দেশ্য | প্রিন্টার/RIP–এ নির্ভরযোগ্য পেজ আউটপুট | নির্ভরযোগ্য দেখা, বিনিময় ও আর্কাইভিং |
| শক্তি | রেন্ডারিংয়ে সুনির্দিষ্ট নিয়ন্ত্রণ; প্রিন্টিং-উন্মুখ | পোর্টেবল; ভিউয়ার-ফ্রেন্ডলি; ফর্ম, লিংক, অ্যাক্সেসিবিলিটি সমর্থন করে |
| সাধারণ ব্যবহারকারী | প্রিন্ট শপ, প্রিপ্রেস, প্রিন্ট সার্ভার | সবার জন্য: ব্যবসা, ডিজাইনার, প্রকাশক, কাস্টমার |
একটি কথা মনে রাখবেন: PostScript পেজটি উৎপাদন করতে বানানো হয়েছে; PDF পেজটি প্রদান করতে।
PDF নিঃশব্দে একটি নথির “চূড়ান্ত রূপ” হয়ে ওঠে: সেই সংস্করণ যা আপনি পাঠান যখন আপনি চান অন্যরা ঠিক আপনার দেখায় সেটাই দেখুক। অনেক কর্মক্ষেত্রে, ওয়ার্ড ফাইল ও স্লাইড ডেক এখনো খসড়া তৈরির টুল হলেও, PDF হচ্ছে যাচাইকরণের বিন্দু—যেই ফাইলটি অনুমোদিত হয়, ইমেল সংযুক্ত করা হয়, পোর্টালে আপলোড করা হয় বা রেকর্ড হিসেবে স্টোর করা হয়।
একটি বড় কারণ হল predictability। PDF লেআউট, ফন্ট, ভেক্টর গ্রাফিক্স এবং ছবিকে এমনভাবে প্যাক করে যে সাধারণত বিভিন্ন ডিভাইস ও অ্যাপ জুড়ে আচরণ অদলবদল হয় না। ফলে এটি টিমগুলোর মধ্যে হ্যান্ডঅফের জন্য আদর্শ যখন তাদের একই সেটআপ নেই—অথবা ভিন্ন অপারেটিং সিস্টেম থাকে।
ম্যাক ও উইন্ডোজ (এবং পরে সার্ভার-লেভেলে লিনাক্স) মিশে যাওয়া–র সঙ্গে PDF কমালো “আমার কম্পিউটারে আলাদা দেখাচ্ছে” সমস্যা। আপনি এক টুলে ডকুমেন্ট তৈরি করে অন্য টুলে পর্যালোচনা করতে পারতেন এবং কম অনিচ্ছাকৃত পরিবর্তন নিয়ে এটি অন্য কোথাও প্রিন্ট করতে পারতেন।
এর ফলে ওয়ার্কফ্লো স্ট্যান্ডার্ড করা সহজ হল:
একই “পোর্টেবল, প্রত্যাশাযোগ্য আউটপুট” ধারণা আজ অভ্যন্তরীণ অ্যাপে দেখা যায় যেগুলো অন-ডিমান্ড ডকুমেন্ট জেনারেট করে—কোট, ইনভয়েস, অডিট রিপোর্ট, শিপিং লেবেল, অনবোর্ডিং প্যাকেট।
আপনার টিম যদি এসব সিস্টেম তৈরি করে, তবে PDF জেনারেশনকে প্রথম-শ্রেণির ওয়ার্কফ্লো হিসেবে বিবেচনা করা সহায়ক: কনসিসটেন্ট টেমপ্লেট, এমবেডেড ফন্ট, পুনরাবৃত্ত এক্সপোর্ট সেটিংস এবং টেমপ্লেট আপডেটে লেআউট ভেঙে গেলে ব্যাকআউট করার উপায়। এটি এমন একটি জায়গা যেখানে Koder.ai–এর মতো প্ল্যাটফর্ম প্রাকৃতিকভাবে মানায়: টিমরা একটি চ্যাট ইন্টারফেস থেকে অভ্যন্তরীণ ডকুমেন্ট পোর্টাল বা PDF-জেনারেশন মাইক্রোসার্ভিস ভায়-বাই-কোড করে আনতে পারে, তারপর প্ল্যানিং মোড ও স্ন্যাপশট/রোলব্যাক দিয়ে নিরাপদে পুনরাবৃত্তি করতে পারে—এবং প্রয়োজনে সোর্স কোড এক্সপোর্টও করে পূর্ণ মালিকানা নিতে পারে।
PDF সেই প্রতিষ্ঠানগুলোকে সহায়তা করেছে যারা প্রচুর ফর্ম ও নোটিস প্রক্রিয়াজাত করে। সরকারগুলি আবেদনপত্র ও প্রকাশনার জন্য PDF গ্রহণ করেছে; বিদ্যালয়গুলো সিলেবাস, প্যাকেট ও সাবমিশনের জন্য; ব্যবসা ইনভয়েস, ম্যানুয়াল ও কমপ্লায়েন্স রেকর্ডের জন্য। আশা হয়ে উঠল: “যদি এটা গুরুত্বপূর্ণ, এটা PDF থাকবে।”
একটি PDF স্বয়ংক্রিয়ভাবে অ্যাক্সেসিবল হয় না। স্ক্রিন রিডারগুলো প্রায়ই সঠিকভাবে ট্যাগ করা স্ট্রাকচার, অর্থপূর্ণ পড়ার ক্রম ও চিত্রের জন্য Alt টেক্সট প্রয়োজন। ফর্মগুলোও চিন্তাশীল সেটআপ চায়—ফিলেবল ফিল্ড, ভ্যালিডেশন ও কম্প্যাটিবিলিটি টেস্টিং—না হলে সেগুলো পূরণ করতে কষ্টকর বা অসম্ভব হয়ে যায়। PDF নথিটিকে নিখুঁতভাবে সংরক্ষণ করতে পারে, তবু যদি আপনি ব্যবহারযোগ্য ডিজাইন না করেন তবে সমস্যাগুলোও সংরক্ষণ হবে।
অনেক “আমার ফাইল তোমার মেশিনে আলাদা দেখাচ্ছে” সমস্যা লেআউটের কথা না বলে অদৃশ্য উপাদানগুলোর কথা: ফন্ট, রঙ সংজ্ঞা ও ইমেজ ডেটা। PostScript ও পরে PDF এই বিবরণগুলো আরো নিয়ন্ত্রণযোগ্য করেছে, কিন্তু কেবল তখনই যদি আপনি সেগুলো সঠিকভাবে প্যাকেজ করেন।
আগে ফন্ট মারাত্মক সমস্যার ছিল কারণ একটি নথি প্রায়ই একটি ফন্টকে রেফারেন্স করত বদলে করে সঙ্গে নিয়ে না। যদি প্রিন্টার (অথবা অন্য কম্পিউটার) একই ফন্ট সংস্করণ না রাখত, টেক্সট রিফ্লো হত, লাইনব্রেক বদলাত, অথবা বিকল্প ফন্ট দেখাত।
PDF এই সমস্যার অনেকটা সমাধান করে দিয়েছে ফন্ট এমবেডিং–এর মাধ্যমে: টাইপফেস (বা প্রয়োজনীয় কিরণ) ফাইলের ভেতরে অন্তর্ভুক্ত করা যায়। মূল ধারণা সহজ: যদি ফন্ট নথির সঙ্গে ভ্রমণ করে, নথিটি স্থিতিশীল থাকে।
স্ক্রিন আলো মিশায়, তাই তারা RGB (লাল, সবুজ, নীল) ব্যবহার করে। প্রিন্টিং কালি মিশায়, তাই সাধারণত CMYK (সায়ান, ম্যাজেন্টা, হলুদ, কালো) ব্যবহার করে। একটি উজ্জ্বল স্ক্রিন রঙ কালি ব্যবহার করে পাওয়া নাও যেতে পারে, তাই RGB→CMYK রূপান্তর রঙকে ম্লান বা সরে যেতে পারে।
যখন ওয়ার্কফ্লো প্রত্যাশাযোগ্য হয়, আপনি সিদ্ধান্ত নেন কখন এবং কিভাবে সেই রূপান্তর হবে, বদলে শেষ মুহূর্তে স্বয়ংক্রিয়ভাবে হওয়া নয়।
প্রিন্টের জন্য ছবিগুলোকে চূড়ান্ত সাইজে পর্যাপ্ত বিশদ দরকার। কম হলে নরম, ব্লকির ফল আসে; বেশি হলে ফাইল ভারী হয়।
কম্প্রেশনও অনুরূপ:
প্রিন্ট পাঠানোর আগে চেক করুন: এমবেডেড ফন্ট, উদ্দেশ্যপূর্ন রঙ মোড (RGB বনাম CMYK), চিত্রের চূড়ান্ত সাইজে রেজোলিউশন, এবং গুরুত্বপূর্ণ ফটো বা গ্রেডিয়েন্টে কম্প্রেশন আঘাত আছে কিনা।
যদি PostScript প্রমাণ করে যে একটি পেজ_preciseভাবে_ বর্ণনা করা যায়, PDF ধারণাটিকে এক ধাপ এগিয়ে নিয়ে যায়: একটি নথি সেই নীতিগুলো বহন করতে পারে যাতে এটি ধারাবাহিকভাবে ব্যাখ্যা করা যায়। স্ট্যান্ডার্ডাইজেশন হল “এটি আমার কম্পিউটারে খোলে” এবং “এটি বছর পরে একইভাবে বিশ্বাসযোগ্যভাবে দেখা যাবে”—এর মধ্যে পার্থক্য।
একটি স্ট্যান্ডার্ড মূলত একটি শেয়ার করা চুক্তি: কিভাবে ফন্ট উল্লেখ করতে হবে, রঙ কিভাবে সংজ্ঞায়িত করা হবে, ছবি কিভাবে এমবেড করা হবে, এবং কোন ফিচারগুলো অনুমোদিত। সবাই ঐ চুক্তি মানলে নথিগুলো অ্যাপ, অপারেটিং সিস্টেম, প্রিন্টার ও সার্ভিস প্রোভাইডারের মধ্যে হ্যান্ডঅফ–এর পরেও অনুমানবিহীন থাকে।
এই predictability বিশেষভাবে গুরুত্বপূর্ণ যখন মূল লেখক, সফটওয়্যার সংস্করণ বা ফন্ট লাইব্রেরি আর পাওয়া যায় না।
সংস্থাগুলো প্রায়ই সেই রেকর্ড রাখা প্রয়োজন যা সময়ের সাথে পাঠযোগ্য ও ভিসুয়ালি স্থিতিশীল থাকবে: সাইন করা ফর্ম, রিপোর্ট, টেকনিক্যাল ম্যানুয়াল, ইনভয়েস, প্যাকেজিং লেবেল বা নিয়ন্ত্রিত যোগাযোগ। স্ট্যান্ডার্ডগুলো “কমপ্লায়েন্স গ্যারান্টি” দেয় না, কিন্তু তারা অস্পষ্টতা কমায় কারণ ফাইলগুলো স্ব-সংশ্লিষ্ট ও যাচাইযোগ্য হয়।
PDF/A হলো আর্কাইভ-মুখী PDF সংস্করণ। এটিকে এমন একটি নিয়ম সেট হিসেবে ভাবুন যা দীর্ঘমেয়াদি পড়ারযোগ্যতাকে ফ্ল্যাশি ফিচারের উপরে অগ্রাধিকার দেয়। সাধারণভাবে, এটি এমবেডেড ফন্ট বাধ্য করে, নির্ভরযোগ্য রঙ সংজ্ঞা ব্যবহার করতে বলে, এবং সেই সব উপাদান এড়ায় যা বাহ্যিক রিসোর্স বা আচরণে নির্ভর করে (যেমন নির্দিষ্ট ধরনের এনক্রিপশন বা ডাইনামিক কন্টেন্ট)।
স্ট্যান্ডার্ডাইজড PDF বিবেচনা করুন যখন আপনি:
একটি ব্যবহারিক পরবর্তী ধাপ হল একটি অভ্যন্তরীণ এক্সপোর্ট চেকলিস্ট নির্ধারণ করা এবং কিছু বাস্তব নথিতে তা টেস্ট করা, তারপর নীতি-স্তরে প্রয়োগ করা।
PDF–গুলো “চূড়ান্ত” মনে হয়, কিন্তু বেশিরভাগ সমস্যা কয়েকটি পূর্বানুমেয় জায়গা থেকে আসে: ছবি, পেজ জ্যামিতি, রঙ সেটিংস ও ফন্ট। এগুলো আগে ধরলে সময়, পুনর্মুদ্রণ ও শেষ মুহূর্তের অস্বস্তি বাঁচে।
বৃহত PDF সাধারণত অ-সংকুচিত ছবি বা ভুলভাবে এমবেড করা ডুপ্লিকেট ছবি থেকে হয়।
ঝাপসা প্রায়ই ছোট রেজোলিউশনের আর্টওয়ার্ক বাড়িয়ে ব্যবহার করার কারণে হয়।
পেজ বক্সগুলো বিভ্রান্তিকর হতে পারে: একটি PDF স্ক্রিনে ঠিক দেখলে সঠিক ট্রিম/ব্লিড সেটিং না থাকলে কাটা পড়তে পারে।
একটি ধাপে ধাপে এক্সপোর্ট চেকলিস্টের জন্য দেখুন /blog/pdf-export-checklist।
PostScript ও PDF কখনো কেবল “ফাইল ফরম্যাট” ছিল না। এগুলো প্রতিশ্রুতি ছিল: যদি আপনি একটি পেজ যথেষ্ট পরিষ্কারভাবে বর্ণনা করেন, তা বিভিন্ন প্রিন্টার, কম্পিউটার এবং দশক পরেও বিশ্বস্তভাবে পুনরুৎপাদিত হতে পারে।
দুটি ধারণা বিশেষভাবে ভালোভাবে বেঁচে আছে: ডিভাইস স্বাধীনতা (নথিকে এক মেশিনে আটকে রাখবেন না) এবং ফিডেলিটি (আপনি যা অনুমোদন করেন অন্যরা ঠিক তাই দেখে ও প্রিন্ট করে)। সবকিছুই “ডিজিটাল” হলেও, এই গ্যারান্টিগুলো ব্যয়বহুল আপ-এবং-ডাউন, পুনরায় কাজ এবং ভুল বোঝাবুঝি কমায়।
অনেক কন্টেন্ট এখন ওয়েব-ফার্স্ট: রেস্পন্সিভ লেআউট, ধারাবাহিক আপডেট ও সহযোগিতা। একই সময়ে, প্রত্যাশা বাড়ছে অ্যাক্সেসিবিলিটি (বাস্তব টেক্সট, ট্যাগ করা স্ট্রাকচার, পড়ার উপযোগী ক্রম) এবং স্ট্রাকচার্ড কন্টেন্ট যা বিভিন্ন চ্যানেলে পুনঃব্যবহারযোগ্য।
এগুলি PDF প্রতিস্থাপন করে না—বরং কখন ব্যবহার করবেন তা বদলে দেয়।
PDF আধুনিক টুলগুলোর সঙ্গে সহাবস্থান করে কারণ এটি একটি নির্ভরযোগ্য হ্যান্ডঅফ ফরম্যাট: অনুমোদন, চুক্তি, নিয়ন্ত্রিত রেকর্ড, একটি চূড়ান্ত ডিজাইন প্যাকেজ করা বা প্রিন্টারে ফাইল পাঠানোর জন্য। ওয়েব পেজ পড়া ও শেয়ারিংয়ের জন্য দুর্দান্ত; PDF স্থির ইরাদা ফ্রিজ করার জন্য দুর্দান্ত।
নিশ্চিত না হলে, সেই মুহূর্ত অনুযায়ী ফরম্যাট চয়ন করুন: খসড়া, সহযোগিতা, অনুমোদন, প্রকাশ বা আর্কাইভ। ওয়ারনক–এর পেজ-ডেসক্রিপশন লিগ্যাসির টেকসই শিক্ষা এটিই: উদ্দেশ্য অনুযায়ী বেছে নিন।
এটি ঘটত কারণ নথিগুলো প্রাপকের সেটআপের উপর নির্ভর করত।
ডিভাইস-স্বতন্ত্র আউটপুট মানে আপনি নির্দিষ্ট কোনো প্রিন্টারের কৌশল বর্ণনা করছেন না; আপনি পেজে কী থাকা উচিত তা বর্ণনা করছেন (ফন্ট, আকার, স্থানাংক, রঙ)।
একটি উপযুক্ত প্রিন্টার বা ইন্টারপ্রেটার তারপর সেই বর্ণনাকে তার নিজের ডটগুলোতে রূপান্তর করে, কিন্তু পেজের কাঠামো ও জ্যামিতি অপরিবর্তিত রাখে।
PostScript হলো একটি পেজ-ডেসক্রিপশন ভাষা—যে নির্দেশগুলো বলে যে একটি প্রিন্টার বা RIP কীভাবে প্রতিটি পেজ আঁকবে।
এটি টেক্সট, ভেক্টর আকৃতি এবং চিত্রগুলোর নিখুঁত অবস্থান ও সাইজিংয়ের জন্য বিশেষভাবে উপযুক্ত, কিন্তু এটি সহযোগিতামূলক, সহজে সম্পাদনাগত নথি ফরম্যাট নয়।
ভেক্টর গ্রাফিক্স গণিতে (রেখা, বক্ররেখা, ভরাট) বর্ণিত হয়, পিক্সেল-গ্রিড হিসেবে নয়।
এমন হওয়ায় লোগো, ডায়াগ্রাম বা টাইপ যেকোনো আকারে বেড়ে গেলেও ধার দেখা যায়—টাইটিং বা টাইপের ধার ঝাপসা হয় না—যা ডেস্কটপ প্রকাশনা ও প্রফেশনাল প্রিন্টিংয়ে বড় সুবিধা নিয়ে আসে।
RIP (Raster Image Processor) PostScript (বা PDF) পেজ-বর্ণনাকে সেই র্যাস্টার ডেটায় রূপান্তর করে যা বাস্তবে একটি ইমেজসেটার বা প্রিন্টার আউটপুট করে।
প্রিন্ট শপগুলো RIP ব্যবহার করত যাতে একটি নিয়ন্ত্রিত পরিবেশে ব্যাখ্যা কেন্দ্রিকভাবে করা যায়—ফলাফল হিসেবে কাজগুলো বারবার একইভাবে ঝরে আসে এবং খরচবোধক অপ্রত্যাশিত ফল কমে।
PDF তৈরি করা হয়েছিল একটি সহজভাবে শেয়ারযোগ্য, প্রত্যাশাযুক্ত "ডকুমেন্ট প্যাকেজ" হিসেবে।
PostScript আসলে একটি প্রোগ্রাম যেটি পেজ আঁকে; PDF সাধারণত পেজগুলো পুনরায় তৈরি করতে যা লাগে তা একত্র করে (প্রায়ই এমবেড করা ফন্ট, ছবি, লেআউট) যাতে এটি বিভিন্ন সিস্টেমে খোলা এবং আদানপ্রদান করা সুবিধাজনক হয়।
সংক্ষেপে:
প্রয়োগিকভাবে:
ফন্ট এমবেডিং মানে টাইপফেসের ডেটা (বা দরকারি ক্যারেক্টার) ফাইলের ভেতরে পাঠানো হয়।
এটি প্রতিস্থাপন রোধ করে—ফন্ট না থাকার কারণে স্পেসিং বা লাইন-ব্রেক বদলায় না—ফলত: পেজিং ও টাইপোগ্রাফি স্থিতিশীল থাকে এমন কোনো মেশিনে খোলা হলেও।
প্রিন্টারের নির্দেশনা অনুযায়ী শুরু করুন, তারপর অদৃশ্য বিবরণগুলো যাচাই করুন।
পুনরায় ব্যবহারযোগ্য প্রক্রিয়ার জন্য দেখুন /blog/pdf-export-checklist।
যখন দীর্ঘমেয়াদি স্থিতিশীলতা ইন্টারেকটিভ ফিচারের থেকে বেশি গুরুত্বপূর্ণ হয় তখন PDF/A বিবেচনা করুন।
এটি আর্কাইভিং-মুখী এবং সাধারণত এমবেডেড ফন্ট, নির্ভরযোগ্য রঙ নির্দিষ্টকরণ ইত্যাদি বাধ্যতামূলক করে, এবং বাহ্যিক রিসোর্স বা ডায়নামিক আচরণে নির্ভরশীল উপাদানগুলো এড়ায়।