โอเพ่นซอร์ส Python HTML เป็นไลบรารีการแปลง PDF
ลองใช้ไลบรารี Python แบบโอเพ่นซอร์สและฟรีนี้เพื่อแปลงเอกสาร HTML เป็น PDF
xhtml2pdf คืออะไร
Xhtml2pdf เป็นไลบรารี Python แบบโอเพ่นซอร์สที่ออกแบบมาเพื่อแปลงเนื้อหา HTML เป็นเอกสาร PDF โดยมุ่งเน้นที่การรักษาโครงสร้างและสไตล์ดั้งเดิม ไลบรารีอันทรงพลังนี้แปลงหน้าเว็บเป็น PDF พร้อมพิมพ์ระดับมืออาชีพได้อย่างราบรื่น
เริ่มต้นใช้งาน xhtml2pdf
คุณต้องมี Python เวอร์ชัน 3.8.0 ขึ้นไปจึงจะติดตั้งและใช้ xhtml2pdf ขั้นแรกให้ติดตั้ง Python จากนั้นใช้คำสั่งด้านล่างเพื่อติดตั้ง xhtml2pdf บนเครื่องของคุณโดยใช้ pip และ สภาพแวดล้อมเสมือน.
ลินุกซ์
python -m venv env
. env/bin/activate
pip install xhtml2pdf
แมคโอเอส
python -m venv env
. env/bin/activate
pip install xhtml2pdf
หน้าต่าง
python -m venv env
.\env\Scripts\activate
pip install xhtml2pdf
การแปลงสตริง HTML เป็นเอกสาร PDF
เราสามารถแปลงสตริง HTML เป็นเอกสาร PDF โดยใช้ไลบรารี xhtml2pdf เราจัดเก็บเนื้อหา HTML ที่สมบูรณ์ไว้ในตัวแปร จากนั้นส่งตัวแปรนั้นไปยังฟังก์ชัน pisa.CreatePDF(html_content, dest, encoding) วิธีการนี้ทำให้เรามีเนื้อหา PDF โดยที่ไฮเปอร์ลิงก์ รูปภาพ และองค์ประกอบอื่นๆ ได้รับการจัดการภายในออบเจ็กต์ BytesIO ที่เราส่งต่อไปให้ สุดท้ายนี้ เราสร้างไฟล์ PDF โดยใช้ข้อมูลที่จัดเก็บไว้ในออบเจ็กต์ BytesIO ตรวจสอบข้อมูลโค้ดด้านล่างเพื่อดูรายละเอียด:
เอาท์พุต
ภาพหน้าจอด้านล่างแสดงเอกสาร PDF ที่แปลงจากสตริง HTML:
การแปลงไฟล์ HTML เป็นเอกสาร PDF
นอกจากนี้เรายังสามารถแปลงไฟล์ HTML เป็น PDF โดยใช้ไลบรารี xhtml2pdf เราอ่านเนื้อหาไฟล์ HTML ลงในตัวแปร จากนั้นส่งตัวแปรนั้นไปยังเมธอด pisa.CreatePDF(html_content, dest, encoding) หลังจากนั้น เราทำตามขั้นตอนเดียวกับที่เราแชร์ในตัวอย่างก่อนหน้าเพื่อสร้างเอกสาร PDF โดยใช้ออบเจ็กต์ BytesIO ดังที่แสดงในข้อมูลโค้ดด้านล่าง:
เอาท์พุต
ภาพหน้าจอด้านล่างแสดงเอกสาร PDF ที่ถูกแปลงจากไฟล์ HTML:
บทสรุป
โดยสรุป xhtml2pdf เป็นไลบรารี Python แบบโอเพ่นซอร์สที่แปลงเอกสาร HTML เป็น PDF ในขณะที่จัดการไฮเปอร์ลิงก์ รูปภาพ และสไตล์ชีตภายนอก xhtml2pdf ไม่รวมไลบรารีส่วนหน้าในขณะที่แปลง HTML เป็น PDF ดังนั้นเมื่อมีตัวแปรใน HTML เช่น {{name}} ตัวแปรเหล่านี้จะปรากฏใน PDF ทุกประการตามที่เขียนไว้ใน HTML แทนที่จะแสดงค่าจริง
นอกจากนี้ ยังขาดการสนับสนุนหน้าไดนามิกที่ต้องอาศัย JavaScript ในการดึงเนื้อหา และไม่เป็นไปตามรูปแบบที่ระบุ CSS ที่ซับซ้อน (เช่น ใช้สี ขนาดตัวอักษร ฯลฯ ที่กล่าวถึงใน CSS แต่ไม่สนใจ CSS ของรูปแบบ เช่น ระยะห่างจากขอบ การแสดงผล เป็นต้น) แม้จะมีข้อจำกัดเหล่านี้ xhtml2pdf ยังคงเป็นเครื่องมืออันทรงคุณค่าสำหรับความต้องการในการแปลง HTML เป็น PDF แบบคงที่ตรงไปตรงมา