Kullanıcı tarafından yüklenen bir resim verildiğinde, bir web sitesinde görüntülemek için çeşitli küçük resimlerini oluşturmam gerekiyor. ImageMagick kullanıyorum ve Google PageSpeed'i mutlu etmeye çalışıyorum. Ne yazık ki, convert
komutunda belirtilen quality
değeri ne olursa olsun, PageSpeed, görüntüyü daha da sıkıştırmanızı önerebilir. http://www.imagemagick.org/script/command-line-options.php?ImageMagick=2khj9jcl1gd12mmiu4lbo9p365#quality telaffuz edilmesiGoogle PageSpeed & ImageMagick JPG sıkıştırma
Not: JPEG ... görüntü biçimleri için
, kalite 1 düşük görüntü kalitesi ve en yüksek sıkıştırma ....
[sağlar] şeklindedir Hatta görüntüyü 1 kullanarak sıkıştırmayı test ettim (yine de kullanılamaz bir görüntü oluşturdu) ve PageSpeed hala bu görüntüyü "görüntüyü kayıpsız şekilde sıkıştırarak" optimize edebileceğimi gösteriyor. ImageMagick kullanarak bir görüntüyü nasıl sıkıştırılacağını bilmiyorum. Herhangi bir öneriniz var mı?
Burada neden bahsettiğimi test etmek için hızlı bir yoldur:
assert_options(ASSERT_BAIL, TRUE);
// TODO: specify valid image here
$input_filename = 'Dock.jpg';
assert(file_exists($input_filename));
$qualities = array('100', '75', '50', '25', '1');
$geometries = array('100x100', '250x250', '400x400');
foreach($qualities as $quality)
{
echo("<h1>$quality</h1>");
foreach ($geometries as $geometry)
{
$output_filename = "$geometry-$quality.jpg";
$command = "convert -units PixelsPerInch -density 72x72 -quality $quality -resize $geometry $input_filename $output_filename";
$output = array();
$return = 0;
exec($command, $output, $return);
echo('<img src="' . $output_filename . '" />');
assert(file_exists($output_filename));
assert($output === array());
assert($return === 0);
}
echo ('<br/>');
}
Ben PNG gibi kayıpsız biçimi denemek istiyor düşünüyorum tarafından desteklenmektedir. Bazen bu özellikle küçük görüntüler için size daha iyi sıkıştırma sağlayabilir; Ancak, kullanıcıların yükledikleri resmin türüne bağlıdır. –
PageSpeed, JPG'ye atıfta bulunur (aslında kaydedilebilecek bir JPG sağladığı için). Kullanıcılar fotoğraf yüklüyor. – StackOverflowNewbie
Hmm garip, yani otomatik olarak oluşturduğunuzdan daha küçük olan JPEG? –