2012-12-10 118 views
0

我想在用戶使用某個瀏覽器,操作系統或屏幕大小(用於區分移動設備和用戶界面)時減少jpeg的圖像大小(和質量)桌面用戶)。我該怎麼做呢? 我想帽子我會調用一個腳本,將返回圖像,例如用php減少jpeg文件大小

<img src="<?resize.php?file=test.jpg&quality=75?>" 

,並在我的resize.php我需要轉換test.jpg放在是$圖像的ressource的imagejpeg()與我可以設置圖像質量。 我如何進行轉換?也會

echo imagejpeg($img,NULL,$quality); 

結果顯示使用上面的html代碼片段的圖像?

回答

2

你需要編寫調整大小常規,然後把它保存在用戶的網絡accessable。而且,我會在第一次調整文件大小時緩存文件,這樣您就不必在每次加載頁面時調整它的大小。

1

兩種反對意見:

  • imgsrc需要一個URL,而不是圖像本身(實際上,可以是一個傳輸數據的URL,但這是錯的尤其是當試圖壓縮)

  • 爲什麼重新呈現每次擊球的圖像?這將會非常緩慢和低效。只需預渲染它們並根據用戶的規格選擇其中一種變體。

如果你仍然想調整上的蒼蠅,然後有一個腳本resize.php或類似的將輸出給定大小的圖像。該腳本必須設置正確的Content-Type標題(例如image/jpg)。然後用這個作爲一個標籤:

<img src="resize.php?file=test.jpg&quality=75"> 

(注:沒有PHP代碼,這只是一個鏈接!)