Php 上传时调整Wordpress图像大小
我有wordpress插件,它有一个小部件,用户可以上传他们的图片。 对于上传图像,我使用wordpress内置功能,用于以下媒体:Php 上传时调整Wordpress图像大小,php,wordpress,image,Php,Wordpress,Image,我有wordpress插件,它有一个小部件,用户可以上传他们的图片。 对于上传图像,我使用wordpress内置功能,用于以下媒体: wp_enqueue_media(); 这给了我从我的小部件上传图像的相同用户界面,就像在媒体标签下一样 我还添加了上传时要创建的图像的自定义大小: add_image_size( 'my_size', 360, 540, false ); 我用这个尺寸的图像在前端显示它。 问题是,当wordpress将原始图像调整到这个大小时,它的质量会降低。“我的尺寸”的
wp_enqueue_media();
这给了我从我的小部件上传图像的相同用户界面,就像在媒体标签下一样
我还添加了上传时要创建的图像的自定义大小:
add_image_size( 'my_size', 360, 540, false );
我用这个尺寸的图像在前端显示它。
问题是,当wordpress将原始图像调整到这个大小时,它的质量会降低。“我的尺寸”的图像像是模糊的
有人知道如何解决这个问题吗。在调整图像大小时保持图像质量,或者至少在质量上不要太宽松。默认情况下,WordPress会降低图像质量以减小其大小。如果不希望发生这种情况,可以使用过滤器自定义图像保存的质量。默认的WordPress质量为90%,从WordPress 4.5开始降低到82% 您可以使用下面的过滤器将质量修改为100%,这是您所需要的
add_filter( 'jpeg_quality', 'image_quality');
function image_quality() {
return 100;
}
您是否尝试过“添加图像大小('my_size',360,540,true);”。最后一个参数(true或false)将决定是否使用“裁剪”。在调整大小期间,如果图像被裁剪,则不应模糊。如果最初上载的图像小于360x540px,除非是svg,否则图像将模糊。@酷不,我不能使用裁剪,因为我需要的是while图片,而不是裁剪的图片。@dingo_d不,图像不小于360x540px。原始尺寸为385x575,可湿性粉剂将其调整为360x538Odd,可能是一个bug。你查过了吗?