issue #2411 cap JPEG quality at 75 for 3XL/4XL derivatives

This commit is contained in:
Linty
2025-09-19 18:42:08 +02:00
parent ad88ed9d5f
commit 8682a9bedc
+9 -1
View File
@@ -598,7 +598,14 @@ if ($d_size[0]*$d_size[1] < $conf['derivatives_strip_metadata_threshold'])
$image->strip();
}
$image->set_compression_quality( ImageStdParams::$quality );
$compression_quality = ImageStdParams::$quality;
// for big sizing never go beyond 75 quality
if (in_array($page['derivative_type'], [IMG_4XLARGE, IMG_3XLARGE]))
{
$compression_quality = min(ImageStdParams::$quality, 75);
}
$image->write( $page['derivative_path'] );
$image->destroy();
@chmod($page['derivative_path'], 0644);
@@ -618,5 +625,6 @@ if ($logger->severity() >= Logger::DEBUG)
'd_size' => $d_size[0] . ' ' . $d_size[1] . ' ' . ($d_size[0]*$d_size[1]),
'mem_usage' => function_exists('memory_get_peak_usage') ? round( memory_get_peak_usage()/(1024*1024), 1) : '',
'timing' => $timing,
'quality' => $compression_quality,
));
}