2010-06-22 132 views
-4

我需要一些方法來動態優化使用PHP的圖像。示例代碼或模塊將非常有用。謝謝。PHP圖像優化

+0

ps:沒有人知道你的意思是「動態優化圖像」。優化......怎麼樣?對於文件大小?爲了圖像清晰? 「動態」是什麼意思? – mpen 2010-06-22 01:59:58

回答

1

你是什麼意思優化?如果您希望保留尺寸但縮小尺寸,請參閱imageJpeg以獲取示例,特別是第三個參數(quality)。考慮100是完美的質量,並開始減少它,以找到質量和尺寸之間的最佳平衡。

4

可以使用thimthumb.php

去你的.htaccess

不是增加

<IfModule mod_rewrite.c> 
    Options +FollowSymLinks 
    RewriteEngine On 
    RewriteRule ^(.*\.(png|jpg))$ /timthumb.php?q=100&src=$1 
</IfModule> 

「Q = 100」 是質量你可以設置它介乎0-100 比在主目錄中創建一個新文件「img.php」例如:www.your-website.com/timthumb.php

http://timthumb.googlecode.com/svn/trunk/timthumb.php

比找到這個

// Get original width and height 
     $width = imagesx ($image); 
     $height = imagesy ($image); 
     $origin_x = 0; 
     $origin_y = 0; 

     // generate new w/h if not provided 
     if ($new_width && !$new_height) { 
      $new_height = floor ($height * ($new_width/$width)); 
     } else if ($new_height && !$new_width) { 
      $new_width = floor ($width * ($new_height/$height)); 
     } 

以及與此

// Get original width and height 
    $width = imagesx ($image); 
    $height = imagesy ($image); 
    $origin_x = 0; 
    $origin_y = 0; 

    // don't allow new width or height to be greater than the original  
    if($new_width > $width) {  
     $new_width = $width;   
    }  
    if($new_height > $height) {  
     $new_height = $height;  
    } 

    // generate new w/h if not provided 
    if ($new_width && !$new_height) { 
     $new_height = floor ($height * ($new_width/$width)); 
    } else if ($new_height && !$new_width) { 
     $new_width = floor ($width * ($new_height/$height)); 
    } 

替換,所以當你去www.your-website.com/images/pict.png它就像你的加載 WWW。 your-website.com/img.php?q=100 & src =/images/pict.png 希望你喜歡這個! &對不起,如果我不能很好地解釋,因爲我的英語不好。 :D

0

非常簡單的一個也在這裏: 只需將質量值(60)從1改爲100就可以了。

腳本執行後,看看文件大小,這就是說,定義你的最佳質量值。

source