使用PHP 給網站 產生快照圖片和縮圖
因為做網站綜合資訊查詢 需要用到這個
搜尋了一下國外的的解決方案
大部分是使用對方API來實現的
但是這種方式不太好
1是會被對方加上浮水印, 縮圖被加浮水印不太好
2免費提供的有產生限制,收費的太貴了 一般$1 = 可以產生10個縮圖
像我這種要產生大約9千萬以上縮圖的 感覺不太靠譜 費用太貴 而且縮圖都被人家浮水印了
最後決定還是 使用第三方的開源軟體 自建
這樣網站快照產生後 可以自動上傳到又拍雲裡 調用速度快
暫時測試的這個方案 無問題
http://code.google.com/p/wkhtmltopdf/downloads/list
32位的下載
wkhtmltoimage-0.11.0_rc1 Linux Static Binary (i368)
64位的下載
wkhtmltoimage-0.11.0_rc1 Linux Static Binary (AMD64)
這個是已編譯的靜態可執行檔 比較簡單和方便
依賴qt4包
解壓
tar -xvf ***.tar.bz2
移動下目錄 然後直接PHP調用
比如 /sbin/wkhtmltoimage
先測試 /sbin/wkhtmltoimage google.com g.jpg
建議將清晰度設定的低點
我測試了 如果不調的話
Google的頁面 產生了PNG大小是1M多 JPG是400多K
PHP裡直接 exec就可以調用產生 然後做圖片處理
然後在使用php的gd或者im
php使用GD或者IM的圖片處理模組處理 就可以了
可以加縮圖的浮水印等等
還在測試其他的開源方案
可以提供REST介面的
到時候在更新
-------------------------------------
國外有很多網站,會提供的URL地址的預覽功能,滑鼠移到URL地址上,就自動顯示網站的縮圖。
我看用 wkhtmltopdf 來實現正合適,而且提供了 Windows、Linux 和 Mac 平台上的版本。
該工具的詳細參數如下:
General Options:
--crop-h <int> Set height for croping
--crop-w <int> Set width for croping
--crop-x <int> Set x coordinate for croping
--crop-y <int> Set y coordinate for croping
-H, --extended-help Display more extensive help, detailing less common command switches
-f, --format <format> Output file format (default is jpg)
-h, --help Display help
--quality <int> Output image quality (between 0 and 100) (default 94)
-V, --version Output version information an exit
--width <int> Set screen width (default is 1024) (default 1024)
---------------------------
tar:
http://code.google.com/p/wkhtmltopdf/downloads/list
相關連結
http://blog.cnlabs.net/?p=2625
http://blog.cnlabs.net/?p=2636
http://brooky.cc/2011/05/26/convert-html-to-image-and-pdf/
http://www.oschina.net/question/12_10653