【发布时间】:2011-12-13 09:37:18
【问题描述】:
我正在为 iPhone 应用创建一个 Web 服务以与之交互。
当我的客户端在服务器端上传图片时,我希望我的 php 脚本调整图片的大小,同时保持宽高比,使其适合 iPhone 屏幕。 (即最长边为
我用 JS 创建了一个模型,只是因为我发现它更容易快速完成。
我很确定,虽然我可能错了,但这并不是最有效的方法。有人可以用更好的逻辑(尤其是开头的那一点)或更数学的方法来纠正我吗?
var w = 960, h = 960, new_w, new_h;
if (w >= h && w > 960 || h >= w && h > 960 || w >= h && h > 640 || h >= w && w > 640) {
if (w > h) {
if (w>960) {
new_w = 960;
new_h = h*(new_w/w);
}
if (h>640) {
new_h = 640;
new_w = w*(new_h/h);
}
}
else {
if (h>960) {
new_h = 960;
new_w = w*(new_h/h);
}
if (w>640) {
new_w = 640;
new_h = h*(new_w/w);
}
}
}
【问题讨论】:
-
唯一的问题是您在检查 w>960 后立即采取行动,并假设 new_h=h*(new_w/w)
标签: php algorithm image resize aspect-ratio