Skip to main content

reflow pdf tool for kindle scribe

Submitted by krishrong on

https://www.willus.com/k2pdfopt/ 

k2pdfopt เป็น tool ที่ดี เอาไว้ reflow pdf ลง kindle

* อันนี้เป็นรายละเอียดการใช้เฉพาะสำหรับ linux, mac ซึ่งเป็น command line(ใน window เป็น graphic interface จะใช้ง่ายกว่า มากๆ)

ทางเลือกที่ง่าย สำหรับคนใช้ mac คือ โหลดแบบ window(k2pdfopt.exe) มา แล้วเปิดด้วยโปรแกรม whisky/wine จะใช้งานได้ง่าย รวมทั้งยืดหยุ่นกว่ามาก ข้อเสียคือ ทำงานช้ากว่ามาก หรือ อาจใช้ในการเลือก option ที่ต้องการแล้ว copy คำสั่ง ไปใส่แบบ command line

  • โดยมี setting เพิ่มเติมสำหรับ kindle scribe คือ width 1860 height 2480
  • ที่เหลือ setting ได้ตามใจ สามารถ save custom option ของตัวเองไว้ได้ด้วย
    • โดย setting ที่ใช้บ่อยสามารถ copy ชุดคำสั่งด้านล่างไปใช้ได้

ทางเลือกที่ยาก คือใช้ native command line (รายละเอียดด้านล่าง ยืดยาว แต่ทำงานได้เร็วกว่า และ customแล้วก็ใช้ได้เรื่อยๆ)

การติดตั้งแบบ command line สำหรับ Linux(Mac จะง่ายกว่าหน่อย ตามนี้)
  1. Download version ที่เหมาะกับเครื่องคอมฯตนเอง แนะนำ 64 bit จะเร็วกว่า
  2. เปิด folder ที่เก็บไฟล์โปรแกรมที่โหลดมา
  3. คลิกขวา ตรงที่ว่างใน folder เลือก open in terminal หรือ กดคีย์ F4 เพื่อเปิดแถบ terminal ใน folder เลย
  4. ใน terminal
    1. พิมพ์คำสั่ง chmod a+x k2pdfopt เพื่อกำหนดให้สามารถ execute file ได้
    2. ทดลองรันโปรแกรม โดยพิมพ์ k2pdfopt หากสำเร็จ โปรแกรมจะ แสดง list คำสั่งที่ใช้งานได้ ขึ้นมา
ในการใช้งาน

จะสร้างโฟลเดอร์แยกสำหรับเก็บโปรแกรมและตัวชุดคำสั่ง custom ที่ใช้บ่อย(จะกล่าวในข้อถัดไป) แล้วตั้ง Favorite shortcut ไว้ที่ sidebar เพื่อให้สามารถเรียกใช้งานบ่อยๆได้สะดวก เช่น

  1. สร้าง Folder ใน Desktop ว่า "PDF converter"
  2. ย้าย k2pdfopt เข้าไป รวมถึง customized script ต่างๆก็จะเก็บไว้ในนี้
  3. เวลาใช้งาน ก็จะเปิดโฟลเดอร์นี้ขึ้น > กด F4 เพื่อเปิดแถบ terminal > แล้ว ลาก script ที่อยากใช้เข้ามาวาง แล้ว enter เพื่อรันโปรแกรมได้เลย
  4. เวลาจะแปลงไฟล์ PDF ไหน ก็ลากเข้ามาใน terminal (ที่มีโปรแกรมของเราเปิดอยู่) แล้วกด Enter เพื่อเริ่มการ convert file

การทำ customized script

โปรแกรม k2pdfopt จะมี option มากมาย ทั้งการหมุน, การตัดขอบ, การทำ ocr(ใส่ข้อความ ในเอกสารที่แสกน), การ reflow, แบ่งหน้า, แบ่งคอลัมน์ ฯลฯ ซึ่งมีรายละเอียดในนี้(ยังไม่ขอลงรายละเอียด)

โดยบางคำสั่งที่เราใช้บ่อย เราสามารถทำเป็น custom script เก็บไว้ใช้ซ้ำๆได้เรื่อยๆ ดังนี้

  1. เปิด text editor
  2. สร้างไฟล์ใหม่ชื่อ อะไรก็ได้ เช่น scribeconvertor โดยไม่ต้องมีนามสกุล
    • ในmac จะลำบากหน่อย  เพราะ มันจะแถมนามสกุล rtf มาให้(ใน linux saveไฟล์ เป็นสกุล .sh ได้เลย)
      1. เปิด terminal
      2. พิมพ์คำสั่ง cat > scribeconvertor จะเป็นการสร้างไฟล์ชื่อ scribeconvertor ขึ้นมา
      3. copy code ในข้อ 3 มาวางได้ เสร็จแล้วกด enter แล้วกด control+d เพื่อ save & exit
  3. ใส่โค้ด ชุดคำสั่งตามที่เราต้องการ (ในที่นี้เป็นชุดคำสั่ง trim ขอบ)
    ./k2pdfopt -ui -fc- -mode trim -w 1860 -h 2480 -dpi 300$*
    • มี -ui เริ่มต้น(เพื่อบอกว่าไม่ใช้โหมด GUI) และ $* ต่อท้ายเสมอ(เพื่อสิ้นสุดการทำงาน)
  4. (Linux)เซฟไฟล์ ไม่ต้องมีนามสกุล (หรือจะมี .sh ก็ได้ เช่น scribeconverter.sh) แล้วปิด (ใน Mac ไม่ต้องมี .sh)
  5. ไปที่ terminal รันคำสั่ง chmod +x (เพื่อให้สามารถ execute file ได้โดยตรง)
    chmod +x scribeconvertor
  6. เวลาเปิดใช้งาน
    1. ใน Mac ก็แค่ double click ที่ customized script ของเรา โดยตรงได้เลย
    2. ใน Linux ลากไฟล์ custom ที่เราสร้างขึ้นไปเปิดใน terminal
  7. เมื่อเปิดแล้ว การใช้งานก็คือ ลากไฟล์PDFที่จะconvertเข้าไปวาง(ใน terminal ที่เปิดโปรแกรมอยู่) อาจใส่ option ที่ต้องการเพิ่มเติมอีก แล้วกด enter ได้เลย
  8. มีข้อแม้อยู่อย่างหนึ่งคือ customized script ที่เราสร้าง ต้องอยู่ folder เดียวกับโปรแกรม k2pdfopt

ทั้งนี้ได้รวบรวมชุดคำสั่งที่ใช้งานบ่อยไว้ดังนี้

  1. Trim ตัดขอบหนังสือ(เฉพาะแนวตั้ง)
    ./k2pdfopt -ui -fc- -mode trim -w 1860 -h 2480 -dpi 300 $*
  2. แบ่งหน้าจากแนวตั้ง 1 หน้า เป็นแนวนอน 2 หน้า(เพื่อขยายให้อ่านง่ายขึ้น)
    ./k2pdfopt -ui -fc- -mode fw -ls- -h 1860 -w 2480 -dpi 400 $*
  3. แบ่งหน้าจากแนวนอน 1 หน้า เป็นแนวตั้ง 2 หน้า(ตัดแบ่งซ้ายขวา กรณีเป็น pdf ที่แสกนมา มักจะแสกนทีนึง 2 หน้าคู่กัน ถ้าอ่านใน e-reader จะไม่สะดวก)

    วิธีแรก

    1. หมุนหน้าจากแนวนอน ให้เป็นแนวตั้ง(90 องศา)
      ./k2pdfopt -ui 90 $*
    2. ใช้วิธีในข้อ2 ในการตัดหน้าครึ่งหนึ่ง ในจากในแนวตั้ง เป็นแนวนอน 2 หน้า
    3. หมุนหน้ากลับ(270 องศา)
      ./k2pdfopt -ui 270 $*

    วิธีที่สอง ใช้ option ที่มีอยู่แล้วในโปรแกรมคือ -col 2 เพื่อตัดแบ่งหน้า เสมือนว่ากำลังตัดแบ่ง 2 คอลัมน์
    /usr/bin/k2pdfopt -ui -fc- -mode fp -ls- -h 2480 -w 1860 -dpi 400 -col 2 $*

    สังเกตว่า เราสามารถใช้หลายวิธีร่วมกันได้ เช่น ทำ 3 เพื่อตัดแบ่งหน้า เสร็จ ก็มาทำ 1 เพื่อ trim ขอบต่อ และ อาจทำ 2 ต่อ เพื่อขยายหน้าให้อ่านง่ายขึ้น

เพิ่มเติม คือ เวลาเราจะเอาหนังสือเข้า kindle scribe ให้ upload เข้า link นี้ https://www.amazon.com/gp/sendtokindle/ จะดีกว่าส่ง email เพราะได้ขนาดไฟล์ใหญ่สุด 200mb, ระบบสารบัญจะทำงานได้ดีกว่า, ฯลฯ อีกมากมาย(a lot of benefits)

  • หากว่าเราอัพไฟล์ผ่าน Send to kindle แล้ว แต่ปรากฏว่า failed ให้เปิดไฟล์ pdf (ที่เพิ่งตัดหน้ามา) โดยใช้ Google chrome(ลากไฟล์เข้ามาใน Chrome) แล้ว print to pdf อีกที ไฟล์จะถูกแปลงให้ใช้งานได้ (แต่สารบัญอาจหายนะ)

อ้างอิงอื่นๆ

Add new comment

The content of this field is kept private and will not be shown publicly.

Plain text

  • No HTML tags allowed.
  • Lines and paragraphs break automatically.
  • Web page addresses and email addresses turn into links automatically.