Dada una imagen cargada por el usuario, necesito crear varias miniaturas para visualizar en un sitio web. Estoy usando ImageMagick y estoy tratando de hacer feliz Google PageSpeed. Desafortunadamente, no importa qué valor quality
especifique en el comando convert
, PageSpeed todavía puede sugerir comprimir la imagen aún más.Google PageSpeed & ImageMagick Compresión JPG
Tenga en cuenta que http://www.imagemagick.org/script/command-line-options.php?ImageMagick=2khj9jcl1gd12mmiu4lbo9p365#quality menciones:
Para los formatos JPEG ... imagen, calidad es 1 [proporciona la] más bajo calidad de imagen y compresión más alta ....
De hecho, incluso probé comprimir la imagen usando 1 (sin embargo, produjo una imagen inutilizable) y PageSpeed todavía sugiere que puedo optimizar esa imagen al "comprimir sin pérdida de tiempo" la imagen. No sé cómo comprimir una imagen más con ImageMagick. ¿Alguna sugerencia?
Aquí está una manera rápida de probar lo que estoy hablando:
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/>');
}
Creo que quiere que pruebe un formato sin pérdida como PNG. A veces, esto puede proporcionarle una mejor compresión, especialmente para imágenes pequeñas; pero realmente depende del tipo de imagen que carguen los usuarios. –
PageSpeed se refiere a JPG (ya que en realidad proporciona un JPG que se puede guardar). Los usuarios están cargando fotos. – StackOverflowNewbie
Hmm extraño, ¿el JPEG es más pequeño que el creado automáticamente? –