2

我正在使用 ImageResizer,我 nuget core 和 webconfig 包,没有更改任何设置,我只有这行代码,

ImageBuilder.Current.Build(file, name, new ResizeSettings("maxwidth=1024&maxheight=1024"), false, true);

但是保存的图像总是有高达 900 的宽度或高度,而不是我在代码中要求的 1024,这是为什么呢?我的原始图像是 1600x1200,如何将大小调整为 1024x770?

谢谢!

[由计算机语言学家编辑]

OP 正在使用 uEditor javascript 库来执行图像上传。

4

2 回答 2

4

事实证明,在发送到服务器之前,原始图像在客户端上由 uEditor javascript 库调整大小。

OP 正确使用了ImageResizer 库,并且该库的行为正确,但它接收到的图像已经是 900 像素宽

调整大小的图像小于期望的最常见原因是原始图像已经小于请求的尺寸,在这种情况下 ImageResizer不会执行放大。如果你想放大,添加&scale=both&scale=upscalecanvas

于 2012-04-04T23:14:24.743 回答
1

根据文档,纵横比由两个最大参数保持。一旦 1600 缩小到 1024,另一个方面总是会比 1024 小很多。如果你想要它更大,只在最小维度上设置最大值。

MaxWidth [get, set] ["maxwidth"]:设置图像的最大期望宽度。(减去填充、边框、边距、效果和旋转)。当同时指定 maxwidth 和 maxheight 时,图像可能会小于此值以保持纵横比。

于 2012-04-03T17:00:29.500 回答