2010-01-20 115 views
2

我有一個this function它調整圖像大小,但最終的質量看起來模糊得太多,不清楚:改進我的縮略圖生成器?

任何其他類或解決​​方案,以提高縮略圖的質量?

感謝

其他注意事項 - 我已經改變了質量100,但什麼都沒有發生!

回答

3

首先,歡迎StackOverflow上。

除非你提供一些測試/截圖,我們不能做很多工作來幫助你,你似乎可以用正確的功能組合(imagecreatetruecolor/imagecopyresampled),所以我的第一個猜測會去$quality論點imagejpegimagepng功能。

對於imagejpeg我建議你使用$quality = 90。對於imagepng應該$quality = 9

您也可以嘗試使用類似這樣的抽搐銳化圖像正確保存圖像前:

ImageConvolution($dst_image, array(array(-1, -1, -1), array(-1, 16, -1), array(-1, -1, -1)), 8, 0); 

有關的3rdParty圖書館我聽到WideImageAsido都相當不錯。

+0

您好,感謝您的好回答,我看了一下WideImage,看起來很有用,但是如果圖像太長或太寬,它是否調整大小和裁剪時間?我想最終的尺寸是40×40那麼寬的圖像時便會croped從側面一點,以適應非常感謝 – 2010-01-20 19:27:11

+0

@Marlene布蘭特:是啊,你不會得到完全相同的功能 - 我建議你張貼一些示例圖像及相應的輸出這樣我們可以進一步幫助你。爲回答 – 2010-01-20 19:33:17

1

如果你有機會到ImageMagick的,這通常是在網絡服務器上相當普遍,你可以用自己節省了很多頭疼的BUIT-在convert命令:

$cmd = escapeshellcmd("env convert -thumbnail $format " . 
    $_FILES['field_name']['tmp_name']; . " -interlace Line -enhance ". $tmp_name); 
+0

謝謝,不幸的是我沒有訪問ImageMagick的。 – 2010-01-20 19:27:48

+0

ImageMagick的又名imagick是上乘之選,但如果你不能更新在php.ini,那麼你不能訪問它。 – TravisO 2010-01-20 21:18:30