คำแนะนำวิธีสร้างไฟล์ PDF จากรูปภาพจำนวนมากโดยใช้ Python

ฉันได้รับใบรับรองผลการเรียนระดับปริญญาตรีเมื่อประมาณหนึ่งเดือนที่แล้ว ฉันมักจะเห็นภาพใบรับรองผลการเรียนเป็นเอกสารเดียวที่ประกอบด้วยมาร์กชีตของทุกภาคการศึกษา แต่เมื่อฉันได้รับใบรับรองผลการเรียน ฉันมีสี่ชีต มันน่ารำคาญสำหรับฉัน เพราะตอนนี้ฉันต้องสแกนหลายครั้งเพื่ออัพโหลดบทบรรยายของฉันไปที่ใดที่หนึ่ง เพื่อให้การอัปโหลดง่ายขึ้น ฉันสามารถสแกนชีตทั้งหมดได้ในครั้งเดียวและสร้างไฟล์ PDF จากรูปภาพของชีตเหล่านั้น นั่นจะทำให้ชีวิตของฉันง่ายขึ้นด้วยการอัปโหลดข้อความถอดเสียงใช่ไหม

ดังนั้น ในการสร้างไฟล์ PDF จากรูปภาพจำนวนมาก ฉันรู้วิธีสองวิธี หนึ่ง: ฉันสามารถใช้บริการเว็บสำหรับกรณีการใช้งานดังกล่าวและอัปโหลดรูปภาพของชีตของฉันได้ อีกอย่าง: ใช้ภาษาการเขียนโปรแกรมบางอย่างในการทำงาน ฉันผู้ชื่นชอบการเขียนโปรแกรมและการเขียนสคริปต์มีแนวโน้มที่จะทำแบบหลัง มาใช้ Python สำหรับงานกันดีกว่าไหม?

การใช้ Python สำหรับงานนี้จะช่วยได้เมื่อเราต้องทำการแปลงรูปภาพหลายร้อยภาพ เนื่องจากการอัปโหลดรูปภาพจำนวนดังกล่าวด้วยตนเองนั้นยุ่งยากและจะใช้เวลานานตลอดไป

สำหรับงานนี้ ลองใช้ไลบรารี่ fpdf ของ Python

นำเข้าระบบปฏิบัติการ
จาก fpdf นำเข้า FPDF

pdf = FPDF()
pdf.set_auto_page_break(0)

pdf.set_auto_page_break(0) ตั้งค่าการแบ่งหน้าอัตโนมัติเป็น False การตั้งค่าการแบ่งหน้าอัตโนมัติเป็น False เป็นสิ่งสำคัญ ไม่เช่นนั้นเราอาจมีหน้าว่างหลังจากแต่ละชีตการถอดเสียงใน PDF

มาบันทึกรายการรูปภาพในตัวแปร imagelist กัน ที่นี่เราอนุญาตเฉพาะไฟล์นามสกุล jpg เท่านั้น หากต้องการรวมส่วนขยายอื่นๆ เราสามารถแก้ไขโค้ดไวยากรณ์ความเข้าใจรายการด้านล่างได้

imagelist = [i สำหรับ i ใน os.listdir('Images') ถ้า i.endswith('jpg')]

ตอนนี้ เราวนซ้ำในตัวแปร imagelist และเพิ่มแต่ละภาพลงในหน้าใหม่ของไฟล์ PDF เรากำลังระบุความกว้างและความสูงด้วยตนเองเพื่อให้พอดีกับรูปภาพในแต่ละหน้าในไฟล์ PDF

# imagelist คือรายการที่มีชื่อไฟล์รูปภาพทั้งหมด
สำหรับรูปภาพในการจัดเรียง(imagelist):
pdf.add_page()
pdf.image('Images/' + image, w= 190, h=280)

โปรดทราบว่าเราได้จัดเรียงรายการรูปภาพเพื่อให้สามารถส่งออกลำดับรูปภาพในไฟล์ PDF ที่ต้องการได้ นอกจากนี้ รูปภาพทั้งหมดจะถูกเก็บไว้ในโฟลเดอร์ รูปภาพ

สุดท้ายนี้ เราจะส่งออกเนื้อหาไฟล์ PDF เป็นไฟล์ PDF โดยใช้คำสั่งด้านล่าง อาร์กิวเมนต์ "F" ใช้สำหรับบันทึกวัตถุไฟล์ PDF ลงในไฟล์ในเครื่อง

pdf.output(“Transcript.pdf”, “F”)

สิ่งนี้จะสะดวกกว่าถ้าฉันต้องทำการแปลงเป็นชุด พลังของการเขียนโปรแกรมถูกนำไปใช้ประโยชน์มากขึ้นในการประมวลผลแบบแบตช์และระบบอัตโนมัติ มันเป็นแรงบันดาลใจให้คุณเขียนโค้ดใน Python หรือไม่? โปรดแจ้งให้เราทราบความคิดเห็นของคุณในส่วนความคิดเห็น :)