我需要为图像生成新尺寸以匹配给定宽度和高度的比例......但不增加原始尺寸。
这个概念似乎很简单但我似乎无法加入这些点。
此外,对于代码示例,语言是PHP。
更新
这是我到目前为止所做的: http://codepad.org/fTdCNhQf
这是我需要的输出:
Example Image • (无法嵌入)
答案 0 :(得分:1)
由于放大不是一种选择,因此您唯一的选择是裁剪和扩展。
试试这个:假设您的图片为W*H
,所需宽高比为R
。
TH = W/R
TW = H*R
aH = ABS(TH-H)*W
和aW = ABS(TW-W)*H
aH
小于aW
,请使用目标宽度;根据{{1}} 这是一个简单的例子:
TH-H
结果操作:由于TW-W
小于Target R: 5/6
Image: W=200, H= 300;
TH = 200/5*6 = 240
TW = 300*5/6 = 250
aH = 60*200=12000
aW = 50*300=15000
,因此将图像垂直裁剪为240
答案 1 :(得分:0)
您是否正在使用ImageMagick库之类的东西来生成图像,或者您是否只需要根据已知比率生成新尺寸?此外,您是否需要从现有图像中发现比率?
这可能有用: http://www.zedwood.com/article/119/php-resize-an-image-with-gd