可配置的样本 - 保持正确的图像比例
-
12-12-2019 - |
题
为可配置样本创建的图像将被拉伸以适合方形 div,并且图像比例将被忽略。矩形图像最终会变形。
图像应该是这样的(取自 magento 1.8.1.0 中的拇指视图):
这就是实际样本的样子:
[主持人编辑:在正文中添加相关评论]
有一个模板位于catalog\product\view ype\options\configurable\swatches.phtml,负责样本图像的代码如下:
<img src="<?php echo $_swatchUrl; ?>" alt="<?php echo $_option->label; ?>" width="<?php echo $_swatchInnerWidth ?>" height="<?php echo $_swatchInnerHeight ?>" />
但是,更改此设置不会影响图像比例。
解决方案
我们遇到了这个,也许有人有更好的解决方案,但是我们扩展了可配置的色板 productimage.php
我们自己的模块的助手。也许 Magento intended everyone to create manual swatches
对于每一个产品。这非常耗时,而且我们的产品效果不佳。他们使用允许访问缓存的 Varien Image 模型,但没有 MAGE 目录/图像模型方便的默认设置。好的部分是这些功能可用。
如果您不知道如何创建模块,建议您制作方形图像。“不要编辑核心文件”扩展它们!
我们延长了
protected function _resizeSwatchImage($filename, $tag, $width, $height)
{
以下
$processor = new Varien_Image($sourceFilePath);
我们添加了
$processor->backgroundColor(array(255, 255, 255));
// Set background color to white
$processor->constrainOnly(TRUE);
//Constrain to proportions
$processor->keepAspectRatio(TRUE);
//keep existing aspect ratio
$processor->keepFrame(TRUE);
//Kinda what it says
其他提示
样本旨在在Magento的所有样品中具有标准宽度和高度,不幸的是。
而不覆盖Magento工作的方式,您最好的选择将使您的样本相同的宽高比(默认为一个正方形)或更改默认的样本尺寸(如果您有计划的设定比率在整个商店使用)。
在目录配置的可配置样本部分中设置了样本宽度和高度。具体来说,您可以找到三个部分:产品详细信息页面上的Swatch尺寸,产品列表中的样品尺寸以及分层导航中的样品尺寸。
magento自动调整图像大小以在将它们渲染到页面之前拟合这些尺寸。