2017年3月22日 星期三

Deskew - 掃描文件轉正

去接老婆時常常要多等個 10-20 分鐘,一問之下原來是掃描文件後,如果看到 pdf 檔裡文件太歪,就要重新掃描。一聽到這問題,直覺上就認為是簡單的 post processing 就能解決問題啊!目前用的方案為:

  • 掃描後的 pdf 檔
  • Ghostscript 將 pdf 轉成多張 tif
  • Deskew 將每個 tif 轉正
  • ImageMagick 將 tif 轉成 jpg,調整壓縮比及resolution,再以 ImageMagick 將 jpg 包成 pdf

曾經嘗試但未採用的方案:
  • Adobe Acrobat Pro
    • 付費軟體,得來不易
    • 沒有開 OCR 的話效果很差,但預設的 OCR 只有英文的
    • 手動旋轉不易調整
  • PDFill
    • 可以用水平線轉正
    • 乍看功能很多,但看首頁就知道,這個軟體的 UI 設計爛到不行,使用起來非常不直覺
  • Scan Tailor
    • 頗接近需求的軟體,可惜除了 deskew,還會把其他步驟綁在一起才能輸出(例如 Select Content),自動化抓好的話很順利,抓不好每張都要調整反正花更多時間
  • unpaper
    • 其實是第一個找到的,看起來功能很完整很強大,除了 deskew 外還有其他掃描文件常需要的校正功能,但因為是純命令列所以參數很多
    • 比較詭異的是 input / output 是少見的 pnm format (.pbm, .pgm, .ppm)
    • 嘗試了一下發現效果沒有想像中好,大概需要再調參數...
  • Photoshop
    • 修圖很好用,當然也能拉水平線轉正,但無法自動化用在 pdf 檔...