23 Feb 2025, 22:41
ผมเขียนหนังสือเล่มใหม่เอาไว้ทำเป็นหนังสือตัวอย่าง จะได้หาวิธีที่สะดวกในการสร้างไฟล์ EPUB, PDF ให้ออกมาได้สวยๆ สักที หลังจากทดลองกับหนังสือสูตรลัด Bloc ไปก็พบว่าผลลัพท์น่าพอใจ แต่ติดอยู่อย่างเดียวคือ EPUB reader ของแต่แพลทฟอร์มมันแสดงผลออกมาไม่เหมือนกันฟอนต์ที่แปะไปกับไฟล์ EPUB ถูกเอาออกไปด้วย บางแพลทฟอร์มก็เอาไฟล์ไปทำ sample โดยไป render EPUB ออกมาใหม่แถมเปลี่ยนสไตล์ของเอกสารไปด้วย ก็เลยทำให้เละกันไปใหญ่ จากปัญหาที่เจอก็เลยต้องทำไฟล์ให้ครบ แล้วไปลุ้นตอนที่แอปของแต่ละแพลทฟอร์ม render ออกมายังไง
แก้ปัญหายังไง?
ใช้ pandoc แปลงไฟล์ markdown ทั้งหมดเป็น EPUB สำหรับหนังสือ
ใช้ pandoc แปลงไฟล์ markdown เฉพาะหน้าปก ปกใน บทนำ บทที่ 1 เป็น EPUB สำหรับตัวอย่างหนังสือ
ใช้ ebook-convert (Calibre) แปลงไฟล์ 2 ส่วน ออกมาเป็น PDF
ใช้ pdfcpu ตัดต่อไฟล์ แล้วรวม หน้าปก ปกใน บทนำ สารบัญ เนื้อหา ปกหลัง เป็นหนังสือ PDF
ใช้ pdfcpu เลือกหน้าเฉพาะ 20 หน้าแรก มาทำเป็นไฟล์ตัวอย่างหนังสือ
ทั้งหมดเขียนเป็น script ง่ายๆ run ทีเดียวได้ไฟล์ครบเลย ถามถามว่าทำไมอยากเขียน script เองทั้งๆ ที่ไอ่ของแบบนี้มันมีให้ดาวน์โหลดมาใช้งานอยู่แล้ว ก็ต้องตอบว่าอยากได้อะไรที่มันตรงกับความต้องการมากกว่า ครั้งหน้าคงได้เขียน CI/CD ใน GitHub Actions ละ