ADD_IMAGE_SIZES忽略裁剪大小和使用比例

时间:2016-06-12 作者:wagg-matt

在我们开始之前,图像肯定足够大了。

我有一张2206 x 2042的图像,我希望以多种不同的方式裁剪(而不是缩放)它,以便响应地使用。

我正在尝试生产的尺寸为:

add_image_size( \'artist-full-xs\', 730, 1842, array(\'right\', \'bottom\') );
add_image_size( \'artist-full-xs-sm\', 730, 1000, array(\'right\', \'bottom\') );
add_image_size( \'artist-full-xs-sm-2\', 730, 600, array(\'right\', \'bottom\') );
第一幅图像按预期进行裁剪,下两幅图像均按比例缩放,而不是裁剪。这是通过查看uploads文件夹发现的,与任何模板问题无关。

@Andy Macauley Brook实际尺寸输出如下:

730 x 1842730 x 1000730 x 600因此,实际作物正在工作,只是在最后两个作物中按比例工作,而不是实际作物

有人知道为什么吗?有人能帮我吗?

1 个回复
SO网友:Rarst

WordPress的“裁剪”并不是字面上的裁剪。就像在中一样,拍摄一张图像并从指定的点剪下这一精确的部分。

其大致意思是:调整图像大小以尽可能适合,然后裁剪不适合的部分。实际上,这意味着结果受源图像和目标大小的比率影响。

确切的逻辑包含在image_resize_dimensions() 函数并按内联注释汇总如下:

// crop the largest possible portion of the original image that we can size to $dest_w x $dest_h
不仅仅是精确的部分,而且是原始的最大可能部分。

确切的步骤是数学,不太友好,无法简单阅读和/或解释。通过快速查看,似乎发生了以下情况:

计算原始图像的比率在您的特定情况下,大小的区别在于前两个高(更大的高度),第三个宽(更大的宽度)。

在前一种情况下,原稿按高度调整大小,然后切割左部分

如果你把它们并排看一看,很明显这一逻辑是如何应用的:

wordpress image sizes crop

相关推荐

Images with overlay

我有一些图片在一个容器中,我想添加一个覆盖和图标。这不是现成的,但我找到了一些有用的代码:HTML:<div class=\"main\"> <span class=\"featured\"><img src=\"http://joshrodg.com/IMG_001-258x258.jpg\" title=\"\" alt=\"\"></span> </div> CSS:.featured {