การแปลงรูปแบบไฟล์รูปภาพด้วย Command Line & sips
การแปลงภาพเป็นรูปแบบไฟล์ใหม่นั้นง่ายมากด้วยเครื่องมือต่างๆ ที่สร้างขึ้นโดยตรงใน OS X (และลีนุกซ์ส่วนใหญ่) แม้ว่าวิธีที่ง่ายที่สุดจะใช้การดูตัวอย่างสำหรับการแปลงภาพ แต่ก็มีตัวเลือกบรรทัดคำสั่งที่ใช้เครื่องมือ sips แบบเดียวกับที่เราเคยพูดถึงมาก่อนเพื่อดำเนินการปรับขนาดเป็นชุดจากบรรทัดคำสั่งเมื่อใช้ sips คุณสามารถแปลงภาพเดี่ยวเป็นรูปแบบภาพใหม่ หรือแม้แต่ทำการแปลงภาพเป็นชุด
การแปลงรูปภาพอย่างง่ายจาก Command Line
หากต้องการแปลงรูปภาพเดียวด้วย sips ให้ใช้ไวยากรณ์สตริงคำสั่งต่อไปนี้:
sips -s รูปแบบ --out
ตัวอย่างเช่น ในไฟล์ชื่อ “test.jpg” ที่คุณต้องการแปลงเป็น PNG ไวยากรณ์ sip จะเป็น:
sips -s รูปแบบ png test.jpg --out test.png
การแปลงรูปภาพเป็นชุดด้วย sips
การแปลงกลุ่มรูปภาพนั้นยากกว่าเล็กน้อย และการใช้สัญลักษณ์แทนอย่างง่าย เช่น การปรับขนาดด้วย sips นั้นไม่ได้ผลเหมือนกัน คุณจะพบว่าการใช้อักขระตัวแทนทั่วไป เช่นไม่ได้เปลี่ยนชื่อไฟล์ด้วย ดังนั้นเราจะใช้เชลล์สคริปต์อย่างง่ายแทนโดยใช้ไวยากรณ์คำสั่งต่อไปนี้:
สำหรับฉันใน ; ทำ sips -s รูปแบบ $i --out /$i.;done
เมื่อนำไปใช้ เราจะแปลงโฟลเดอร์ของไฟล์ .jpeg เป็นไฟล์ png ในโฟลเดอร์ย่อยใหม่ของไดเร็กทอรีปัจจุบัน ซึ่งเรียกว่า “Converted”:
สำหรับฉันใน .jpeg; ทำ sips -s รูปแบบ png $i --out Converted/$i.png;done
การเรียกใช้คำสั่งนั้นอาจส่งผลให้ภาพ JPEG ทั้งหมดถูกแปลงเป็นรูปแบบ PNG ในไดเร็กทอรีใหม่
สิ่งที่น่ารำคาญคือชื่อไฟล์ที่ได้จะรวมประเภทไฟล์ต้นฉบับไว้ด้วย ซึ่งหมายความว่าคุณจะได้ไฟล์ชื่อ “test.jpeg.png” นามสกุลไฟล์ยังคงถูกต้อง เป็นเพียงปัญหาในการตั้งชื่อเท่านั้น คุณสามารถแก้ไขได้โดยการเปลี่ยนชื่อไฟล์เพื่อเริ่มต้นด้วยการเพิ่มนามสกุลไฟล์ที่เหมาะสมในภายหลังด้วยสคริปต์ทุบตีที่คล้ายกัน โดยใช้ regex หรือเปลี่ยนชื่อด้วยตนเองด้วย mv
เมื่อเรียกใช้ sips ด้วยรูปแบบไฟล์บางรูปแบบ คุณอาจพบข้อผิดพลาด 'คำเตือน lingpng' เกี่ยวกับข้อมูล exif ข้อผิดพลาดเหล่านี้สามารถละเว้นได้เป็นส่วนใหญ่ และการแปลงรูปภาพจะยังคงเกิดขึ้น
ขอบคุณ Thom สำหรับแนวคิดการแปลงเป็นชุด