Wordpress图像大小裁剪,但始终成比例

Wordpress图像大小裁剪,但始终成比例,wordpress,image,crop,Wordpress,Image,Crop,我已经设置了一个add\u image\u size函数,该函数通常仅在一个维度上大于上传的图像。这会导致图像中的一个维度被裁剪,而另一个维度未被裁剪,从而导致图像失去其比例。因此,我得到了一组比例不相等的图像 理想的结果是,如果图像在一个维度中被裁剪,那么它在另一个维度中被按比例裁剪,这意味着如果需要,我可以使用CSS将其放大 例如,我的图像大小是1200 x 900。如果我上传的图像是1100 x 1467。输出为1100 x 900的图像。但是,我需要的是1100 x 825的图像(与我设

我已经设置了一个
add\u image\u size
函数,该函数通常仅在一个维度上大于上传的图像。这会导致图像中的一个维度被裁剪,而另一个维度未被裁剪,从而导致图像失去其比例。因此,我得到了一组比例不相等的图像

理想的结果是,如果图像在一个维度中被裁剪,那么它在另一个维度中被按比例裁剪,这意味着如果需要,我可以使用CSS将其放大

例如,我的图像大小是1200 x 900。如果我上传的图像是1100 x 1467。输出为1100 x 900的图像。但是,我需要的是1100 x 825的图像(与我设置的1200 x 900图像大小的比例相同,但更小,因为图像不够大,无法满足此大小)

以下是带有参数的函数:

add_image_size('scannershigh',1200600,true)


我似乎找不到一种方法来实现这一点——这可能吗?

因为这是wordpress的默认功能,但您可以更改,请转到wp include folder然后是media.php并找到这些行

$s_x = floor( ($orig_w - $crop_w) / 2 );

$s_y = floor( ($orig_h - $crop_h) / 2 );
换成

 $s_x = 0;

 $s_y = 0;

这对您很有用。

您能详细解释一下吗,这样我们就可以很容易地解决您的问题@KrunalShah更新的问题:)您是否为设置了
$crop
-参数?@Max是的,它只是不成比例地裁剪,只裁剪超出裁剪边界的图像部分。您介意将当前使用的代码添加到您的问题中吗?如果您在
添加图像大小()
中将
$crop
参数设置为
false
,则应保持纵横比,即进行“软裁剪”。您不应编辑核心文件,因为更新WordPress时会覆盖它们。这就是过滤器和操作的用途。