0

我搜索并尝试了故障排除常见问题解答,但看不到对我遇到的问题的参考。

我的 web.config 的 resizer 部分中有以下预设:

name="kbp600w" 默认值="w=600;h=600;mode=max;anchor=MiddleCenter;watermark=kbp600"

name="kbp600" 默认值="w=600;h=600;anchor=MiddleCenter;bgcolor=FEF2E1;watermark=kbp600"

name="kbp300" 默认值="w=300;h=300;anchor=MiddleCenter;bgcolor=FEF2E1;watermark=kbp300"

我使用以下 url 生成图像(我使用同一个文件生成三个不同的图像):

图片.jpg?preset=kbp600w

图片.jpg?preset=kbp300

图片.jpg?preset=kbp600

所以,事情是这样的:

第一个 URL 工作正常,并且执行预设中定义的所有内容。

第二个 URL 也可以正常工作,并且可以执行预设中定义的所有内容。

当图像宽度大于高度(横向)时,第三个 URL 工作正常,但是当高度是最大尺寸(纵向)时,它会正确调整高度但宽度尺寸不会被填充以填充 600px 宽度,而是变为计算任何尺寸以保持纵横比。我需要它始终具有 600 x 600 的尺寸,并在顶部和底部或侧面使用填充的适当背景颜色进行填充。

难道我做错了什么?

https://gist.github.com/anonymous/5672886

4

1 回答 1

0

使用mode=pad and scale=canvas (or scale=both) 始终准确获取请求的尺寸。

如果没有 scale=both 或 scale=canvas,则任一尺寸 < 600x600 的图像都不会被放大或填充。

PS Anchor=MiddleCenter 是默认设置,因此您无需指定。

于 2013-05-29T21:23:29.840 回答