program

[程式]使用 wkhtmltoimage 取得網頁預覽縮圖

有時候你也許會需要網頁預覽縮圖的功能,像是 Google 短網址,在產生短網址給你的同時,也會在短網址下方產生一個網頁預覽所圖給你,只是 Google 有提供產生短網址的 API,但是似乎沒有提供產生縮圖的 API。所以我們只好使用 wkhtmltoimage 自己來產生網頁預覽縮圖了。以下是使用 Google 短網址時,科科報產生的縮圖。

screenshot_krkrnews

安裝 wkhtmltoimage

我的 server 是 Ubuntu 14.04,安裝如下

sudo add-apt-repository ppa:ecometrica/servers
sudo apt-get update
sudo apt-get install wkhtmltopdf  

Command line 模式使用

wkhtmltoimage http://www.google.com.tw screenshot.png

個人認為比較重要的參數有
–crop-h 圖片裁切的高度
–crop-w 圖片裁切的寬度
–crop-x 圖片裁切的 X 座標
–crop-y 圖片裁切的 Y 座標
–quality 圖片輸出的品質 (0 ~ 100, 預設值為 94)
其他詳細參數可以參考這裡

在 PHP 上如何使用

你可以直接透過 exec 執行命令列(Command line)操作。也可以使用 snappy 進行操作。這是一個 GitHub 上其他高手寫好的 wrapper 。

專案名稱: snappy
來源網址: https://github.com/KnpLabs/snappy

在 Ruby 上如何使用

你可以使用這個在 Ruby 上的 wrapper

專案名稱: IMGKit
來源網址: https://github.com/csquared/IMGKit

最後,如果遇到中文亂碼怎麼辦?

記得在 ubuntu 上安裝中文字型。這裏我之前是參考霹靂開發幫

apt-get install libxrender-dev ttf-arphic-bsmi00lp ttf-arphic-gbsn00lp xfonts-intl-chinese

如果覺得內容還不錯,歡迎訂閱我的粉絲團

特色圖片來源: Designed by Freepik

很愛畫虎爛的我,開始了用文章唬爛社會大眾的志業!