iPhoneアプリが対話するためのWebサービスを作成しています。
クライアントが画像をサーバー側にアップロードするときに、アスペクト比を維持しながらphpスクリプトで画像のサイズを変更して、iPhoneの画面に収まるようにします。(つまり、最長の辺は<= 960で、最短の辺は<=640です。
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);
}
}
}