我不认为这是开箱即用的,但我想确保。 我们想做以下事情。
获取任何图像输入并强制输出宽度为固定大小。如果宽度小于输出宽度,我们希望将图像居中并向图像添加水平填充,但不添加垂直填充。
例如
我知道我们可以升级图像(scale = both)或设置画布比例(但是添加了顶部/底部填充)或者我们可以为图像添加填充但是没有一个是我们想要的。
感谢您的帮助
对Nathanael的回应
您的评论完全正确。
我希望http://z.zr.io/ri/red-leaf.jpg?width=1000&scale=canvas&bgcolor=gray能够正常工作
是的,我们的问题是图像高度事先不知道,但很高兴知道它的工作高度已知
我认为如果有一个scale = padwidth的命令可以用于变量高度,那将会很棒。或者padwidth = true和padheight = false的设置可以与scale = canvas一起使用。
答案 0 :(得分:1)
因此,我们假设您已获得800x600px image,并申请?width=1000&scale=canvas
。你原本期望这会产生一个1000x600像素的图像,但是它产生了一个1000x750像素的图像,对吗?
http://z.zr.io/ri/red-leaf.jpg?width=1000&scale=canvas&bgcolor=gray
如果明确指定高度,填充消失 - 但您可能事先不知道图像高度,对吗?
http://z.zr.io/ri/red-leaf.jpg?width=1000&scale=canvas&bgcolor=gray&height=600
什么是最不令人惊讶的行为 - 维持宽高比,或只添加所需的最小填充?您如何期望这种行为或作为命令公开?