สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

แนะนำ สอบถาม ภาษา C สำหรับผู้เริ่มต้น ภาษา Java ภาษา Python

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
fonfonn
PHP VIP Members
PHP VIP Members
โพสต์: 4983
ลงทะเบียนเมื่อ: 11/07/2022 9:28 am

สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

โพสต์ที่ยังไม่ได้อ่าน โดย fonfonn »

สอบถามค่ะ การแปลงไฟล์เป็นภาพด้วย ImageMagick มีตัวอย่างการใช้งานไหมคะ เช่น
1. เรามีการรับ input ไฟล์ pdf เข้ามา และ ใช้คำส่งหรือตัวอย่างโค้ดไหนในการแปลงเป็นไฟล์ภาพคะ
2. ถ้ามีการรับไฟล์ pdf ที่เป็นไฟล์หลายหน้า จะทำการแปลงเป็นไฟล์ภาพทีละหน้าต้องทำยังไงคะ
อยากได้ตัวอย่างการใช้งาน
you're the only one treasure💎
ภาพประจำตัวสมาชิก
MBMoo
PHP VIP Members
PHP VIP Members
โพสต์: 25810
ลงทะเบียนเมื่อ: 04/06/2020 10:05 am

Re: สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

โพสต์ที่ยังไม่ได้อ่าน โดย MBMoo »

ใช้วิธี python เรียกใช้งาน imagemagick ผ่าน command line
ตัวอย่างการแปลงไฟล์ค่ะ

โค้ด: เลือกทั้งหมด

import subprocess

process = subprocess.Popen(r"Magick convert C:\Users\USER\Desktop\LOADING.pdf C:\Users\USER\Desktop\a.png", stdout=subprocess.PIPE, stderr=subprocess.PIPE)
out, err = process.communicate()

ดูเพิ่มเติมได้ที่
สอบถามถามวิธีการแปลง pdf เป็น image โดยใช้ imagemagick ผ่าน command line ค่ะ
viewtopic.php?p=249494#p249494

ส่วนนี้ไม่แน่ใจว่าสามารถใช้วิธีอื่นได้อีกหรือเปล่านะคะ
ภาพประจำตัวสมาชิก
MBMoo
PHP VIP Members
PHP VIP Members
โพสต์: 25810
ลงทะเบียนเมื่อ: 04/06/2020 10:05 am

Re: สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

โพสต์ที่ยังไม่ได้อ่าน โดย MBMoo »

เพิ่มเติมนะคะ

คำสั่งข้างบน ถ้าเป็น pdf หลายหน้า imagemagick จะแปลงเป็น png ให้หลายไฟล์ตามจำนวนหน้าเลยค่ะ โดย จะใช้ชื่อว่า a ตามที่เราตั้ง ต่อด้วย -1 , -2 ตามเลขหน้าค่ะ

สมมติ pdf 3 หน้า รูปที่ได้จะได้ a-1.png , a-2.png และ a-3.png
ภาพประจำตัวสมาชิก
fonfonn
PHP VIP Members
PHP VIP Members
โพสต์: 4983
ลงทะเบียนเมื่อ: 11/07/2022 9:28 am

Re: สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

โพสต์ที่ยังไม่ได้อ่าน โดย fonfonn »

นำไปทดลองใช้แล้วค่ะ และทดลองแปลงหลายๆไฟล์ในครั้งเดียว ผลลัพธ์ที่ได้

โค้ด: เลือกทั้งหมด

import subprocess

process = subprocess.Popen(r"Magick convert C:/Users/fonfo/Downloads/test/lernpython.pdf C:/Users/fonfo/Downloads/test/lernpython.png", stdout=subprocess.PIPE, stderr=subprocess.PIPE) #แปลงแบบไฟล์ PFD ที่มีหน้าเดียว
process = subprocess.Popen(r"Magick convert C:/Users/fonfo/Downloads/test/pythonPDF.pdf C:/Users/fonfo/Downloads/test/pythonPDF/pythonPDF.jpg", stdout=subprocess.PIPE, stderr=subprocess.PIPE) #แปลงแบบไฟล์ PFD ที่มีหลายหน้าและสร้างโฟร์เดอร์เก็บแยก

out, err = process.communicate()
  • ไฟล์ PDF ก่อนแปลง แบบไฟล์ PDF หน้าเดียว
    pdfต้นฉบับแบบหน้าเดียว.png
    pdfต้นฉบับแบบหน้าเดียว.png (4.03 KiB) Viewed 726 times
  • ไฟล์ภาพที่แปลงได้
    ไฟล์ภาพที่แปลงได้.png
    ไฟล์ภาพที่แปลงได้.png (5.84 KiB) Viewed 726 times
  • ไฟล์ PDF ก่อนแปลง แบบไฟล์ PDF หลายหน้า
    pdfต้นฉบับแบบหลายหน้า.png
    pdfต้นฉบับแบบหลายหน้า.png (113.76 KiB) Viewed 726 times
  • ไฟล์ภาพที่แปลงได้ โดยถูกเก็บในโฟร์เดอร์ pythonPDF
    ไฟล์ภาพที่แปลงได้แยกเป็นแต่ละหน้าๆ.png
    ไฟล์ภาพที่แปลงได้แยกเป็นแต่ละหน้าๆ.png (42.82 KiB) Viewed 726 times
you're the only one treasure💎
ภาพประจำตัวสมาชิก
fonfonn
PHP VIP Members
PHP VIP Members
โพสต์: 4983
ลงทะเบียนเมื่อ: 11/07/2022 9:28 am

Re: สอบถามในภาษา python การแปลงไฟล์ PDF เป็นภาพด้วย ImageMagick

โพสต์ที่ยังไม่ได้อ่าน โดย fonfonn »

เพิ่มเติมจากที่ทำนะคะ ถ้าแปลงไฟล์ เป็น .png ไฟล์ภาพจะเป็นพื้นหลังดำ ถ้าหากต้องการแปลงไฟล์ให้เป็นภาพพื้นหลังขาวปกติ ควรใช้ .jpg แทน จะได้ไฟล์ภาพที่มีพื้นหลังสีขาวค่ะ
you're the only one treasure💎
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 68