HTML এবং CSS রূপান্তরের জন্য ফ্রি পাইথন লাইব্রেরি
ওপেন সোর্স পাইথন লাইব্রেরি HTML থেকে PDF ডকুমেন্ট তৈরি করতে সক্ষম। এটি উন্নত পেজ লেআউট, ছবি ও টেবিল রেন্ডারিং, কাস্টম ফন্ট যোগ করা, হেডার/ফুটার ইত্যাদি সমর্থন করে।
XHTML2PDF লাইব্রেরি কী?
ওয়েব ডেভেলপমেন্টের জগতে, HTML কন্টেন্ট থেকে PDF ডকুমেন্ট তৈরি করার প্রয়োজন একটি সাধারণ চাহিদা। এটি ইনভয়েস, রিপোর্ট বা অন্য যেকোনো প্রিন্টযোগ্য ডকুমেন্ট তৈরি করার জন্য হোক, এই রূপান্তর পরিচালনার জন্য একটি নির্ভরযোগ্য টুল থাকা অত্যন্ত গুরুত্বপূর্ণ। এখানেই শক্তিশালী ওপেন-সোর্স Python লাইব্রেরি XHTML2PDF সাহায্য করে। html2pdf (পূর্বে pisa নামে পরিচিত) একটি শুদ্ধ-Python লাইব্রেরি যা HTML (XHTML সহ) এবং CSS কে PDF ডকুমেন্টে রূপান্তর করে। এটি ReportLab টুলকিট এবং html5lib এর উপর নির্মিত, এবং ঐচ্ছিকভাবে PyPDF থেকে সমর্থন পায়। প্ল্যাটফর্ম-নিরপেক্ষ এবং সহজলভ্য, এটি ডেভেলপারদের তাদের ওয়েব-ভিত্তিক কন্টেন্টকে দ্রুত এবং কার্যকরভাবে প্রিন্টযোগ্য PDF-এ রূপান্তর করতে সক্ষম করে।
XHTML2PDF-এ এমন অনেক বৈশিষ্ট্য রয়েছে যা এটিকে PDF উৎপাদনের জন্য একটি বহুমুখী টুল করে তোলে। এটি HTML5 এবং CSS 2.1 সমর্থন করে, সিমলেস Django ইন্টিগ্রেশন, শক্তিশালী কমান্ড-লাইন ইন্টারফেস, কাস্টম PDF-নির্দিষ্ট ট্যাগ, উন্নত পেজ লেআউট এবং স্টাইলিং, টেবিল ও ইমেজের জন্য আরও ভাল সমর্থন ইত্যাদি প্রদান করে। ডেভেলপারদের জন্য XHTML2PDF এত আকর্ষণীয় করে তোলার মূল কারণ হল এর সরলতা এবং নমনীয়তা। যদি আপনি জানেন কীভাবে HTML এবং CSS লিখতে হয়, তবে আপনি এই লাইব্রেরি ব্যবহার করে দ্রুত PDF তৈরি করা শুরু করতে পারেন। এটি একটি শুদ্ধ Python লাইব্রেরি, যার অর্থ এটি প্ল্যাটফর্ম-নির্ভর নয় এবং যেকোনো অপারেটিং সিস্টেমে চালানো যায় যা Python সমর্থন করে। এছাড়াও লাইব্রেরির সীমাবদ্ধতা সম্পর্কে সচেতন থাকা গুরুত্বপূর্ণ; এটি সম্পূর্ণ CSS স্পেসিফিকেশন সমর্থন করে না এবং JavaScript চালায় না।
XHTML2PDF দিয়ে শুরু করা
XHTML2PDF pip ব্যবহার করে ইনস্টল করা যায়, নিম্নলিখিত কমান্ডগুলো আপনার প্ল্যাটফর্মের জন্য যদি কোনো Python হুইল উপলব্ধ থাকে তবে তা থেকে ইনস্টল করবে।
pip ব্যবহার করে XHTML2PDF ইনস্টল করুন
pip install xhtml2pdf GitHub এর মাধ্যমে রিপোজিটরি ক্লোন করুন
git clone https://github.com/xhtml2pdf/xhtml2pdf.git এটি ম্যানুয়ালি ইনস্টল করাও সম্ভব; সর্বশেষ রিলিজ ফাইলগুলো সরাসরি GitHub রিপোজিটরি থেকে ডাউনলোড করুন।
পাইথন ব্যবহার করে HTML ও CSS কে PDF-এ রূপান্তর করুন
ওপেন সোর্স XHTML2PDF লাইব্রেরির প্রধান কাজ হল HTML এবং CSS (ইনলাইন স্টাইলসহ) পার্স করা এবং সেগুলোকে সঠিকভাবে একটি PDF ডকুমেন্টে রেন্ডার করা। এটি HTML ট্যাগ এবং CSS প্রপার্টির একটি বিস্তৃত উপসেট সমর্থন করে, যা উল্লেখযোগ্য ডিজাইন নমনীয়তা প্রদান করে। এটি পেজ ব্রেক, হেডার ও ফুটার, পেজ মার্জিন ও সাইজ, ফন্ট এমবেড করা ইত্যাদি ফিচার সমর্থন করে। নিম্নলিখিত সহজ উদাহরণটি দেখায় কীভাবে সফটওয়্যার ডেভেলপাররা Python কোডের মাধ্যমে HTML কন্টেন্টকে PDF ফাইলে রূপান্তর করতে পারেন।
Python ব্যবহার করে HTML কন্টেন্টকে PDF ফাইলে কীভাবে রূপান্তর করবেন?
from xhtml2pdf import pisa
# রূপান্তরিত করার জন্য HTML বিষয়বস্তু
html_content = """
হ্যালো, ওয়ার্ল্ড!
এটি হল আমার প্রথম PDF যা XHTML2PDF দিয়ে তৈরি হয়েছে।
"""
# আউটপুট পিডিএফ ফাইলের নাম
output_filename = "hello_world.pdf"
# বাইনারি রাইট মোডে আউটপুট ফাইলটি খুলুন
with open(output_filename, "w+b") as pdf_file:
# Create the PDF
pisa_status = pisa.CreatePDF(
html_content, # the HTML to convert
dest=pdf_file) # file handle to receive result
# পিডিএফ তৈরি সফল হয়েছে কিনা পরীক্ষা করুন
if not pisa_status.err:
print(f"Successfully created PDF: {output_filename}")
else:
print(f"Error creating PDF: {pisa_status.err}")
উন্নত পৃষ্ঠা বিন্যাস ও কাস্টম ফন্ট সমর্থন
XHTML2PDF লাইব্রেরি ব্যবহার করে সফটওয়্যার ডেভেলপাররা তাদের PDF পৃষ্ঠার লেআউটের উপর সূক্ষ্ম নিয়ন্ত্রণ পায়। তারা @page CSS রুল ব্যবহার করে পেজের সাইজ, মার্জিন এবং অরিয়েন্টেশন নির্ধারণ করতে পারে। ডেভেলপাররা তাদের ডকুমেন্টের জন্য কাস্টম হেডার ও ফুটারও তৈরি করতে পারে। তাছাড়া, যদি আপনার PDF-এ নির্দিষ্ট ফন্ট ব্যবহার করতে হয়, লাইব্রেরি আপনাকে কাস্টম ফন্ট এমবেড করার অনুমতি দেয়। এটি ব্র্যান্ডিং এবং সব ডকুমেন্টে সঙ্গতিপূর্ণ টাইপোগ্রাফি নিশ্চিত করার জন্য বিশেষভাবে উপকারী।
পাইথন লাইব্রেরি দিয়ে PDF ইমেজ ও টেবিল রেন্ডারিং
ওপেন সোর্স XHTML2PDF লাইব্রেরি আপনার PDF-এ টেবিল এবং ছবি রেন্ডার করার জন্য শক্তিশালী সমর্থন প্রদান করে। আপনি CSS ব্যবহার করে আপনার টেবিলের স্টাইল করতে পারেন, এবং ছবির জন্য আপনি তাদের আকার এবং অ্যালাইনমেন্ট নিয়ন্ত্রণ করতে পারেন। লাইব্রেরি সহজে এবং সঠিকভাবে ছবি, ফন্ট এবং অন্যান্য স্ট্যাটিক অ্যাসেট সমাধান ও এম্বেড করতে পারে, যা স্বয়ংসম্পূর্ণ PDF তৈরি করার জন্য গুরুত্বপূর্ণ। আপনি শুধুমাত্র আপনার HTML-এ
HTML5 এবং CSS 2.1 সমর্থন
যদি আপনি HTML এবং CSS-এ পরিচিত হন, স্টাইলিং সহ PDF পুনরায় তৈরি করা স্বজ্ঞাত হয়ে যায়—কোনো নতুন শেখার বাঁধা নেই। XHTML2PDF লাইব্রেরি আধুনিক ওয়েব স্ট্যান্ডার্ডের জন্য চমৎকার সমর্থন প্রদান করে, যার মধ্যে HTML5 এবং CSS 2.1 অন্তর্ভুক্ত, এবং কিছু CSS 3 প্রপার্টির সমর্থনও রয়েছে। এর অর্থ আপনি পরিচিত HTML ট্যাগ এবং CSS প্রপার্টি ব্যবহার করে আপনার PDF ডকুমেন্টের গঠন ও স্টাইল করতে পারেন, ঠিক ওয়েব পেজের মতো।