Wordpress add_image_size обрезка дает очень плохое качество

Я пытаюсь изменить размер изображения до размера 300x175, но результат очень плохого качества (исходное изображение хорошего качества).

Я использую следующий код:

add_image_size( 'saveti-home-thumb', 300, 175, true);

Я попытался отключить сжатие WordPress, добавив:

add_filter('jpeg_quality', function($arg){return 100;}); in functions.php,

но все равно безрезультатно.

Это исходное изображение: https://saveti.bg/wp-content/uploads/2019/05/meteora-scenery.jpg Это изображение после сжатия: https://saveti.bg/wp-content/uploads/2019/05/meteora-scenery-300x175.jpg

Как видите, качество супер испорчено. Есть идеи, как это исправить?

Спасибо


person webtech    schedule 19.10.2019    source источник


Ответы (2)


Насколько я понимаю, это может быть несколько факторов: один из них происходит, когда вам нужно обрезать изображения в тех случаях, когда они не соответствуют пропорциям фотографии. Другой - когда изображение не имеет значения по умолчанию rgb. И еще одно, похоже, это всегда происходило в WP и еще не исправлено.

Ссылки для вас, чтобы прочитать о элементах, которые я быстро прокомментировал.

https://wordpress.org/support/topic/images-lose-quality-after-wp-resize-even-with-the-jpeg-quality-filter-at-100/ https://wordpress.stackexchange.com/questions/301710/image-quality-thumbnail-compression-in-wordpress

Хотя это все еще не имеет хорошего решения, я предлагаю использовать эскизы с изображениями без обрезки только с изменением размера, изменив текущий код функции на:

 add_image_size( 'saveti-home-thumb', 300, 175, false);
person Kelvin Mariano    schedule 19.10.2019
comment
Спасибо, попробовал. Надеюсь, что есть лучшее решение. Я хотел кадрировать из-за скорости страницы, я хочу отображать изображение с точным размером, который нужен. - person webtech; 20.10.2019
comment
Я не могу сказать, что это решение - person webtech; 27.10.2019

Для обрезки изображений есть один хороший плагин.

https://wordpress.org/plugins/regenerate-thumbnails/

Добавьте этот плагин в свой WordPress. Добавьте нужный размер изображения в functions.php.

add_image_size( 'saveti-home-thumb', 300, 175, true);

После этого регенерируйте все изображения в

Инструменты> Восстановить эскизы

После этого вызовите изображение с этим параметром saveti-home-thumb. Нравиться

get_the_post_thumbnail_url( int|WP_Post $post = null, string|array $size = 'saveti-home-thumb' )
person Krupal Panchal    schedule 20.10.2019