使用PHP 給網站 產生快照圖片和縮圖

來源:互聯網
上載者:User

使用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 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.