本文收集常用的函數。
一、等比縮放函數。
/*
×××等比縮放函數×××,9種判斷條件
xh:新高
xw:新寬
oldH:容高
oldW:容寬
LoadImgH:原高
LoadIngW:原寬
*/
function Scale() {
if (LoadImgH == oldH && LoadImgW == (oldW/2)) {//1.正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
if (LoadImgH == oldH && LoadImgW>(oldW/2)) {//2、原高==容高,原寬>容寬 以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
if (LoadImgH == oldH && LoadImgW<(oldW/2)) {//3、原高==容高,原寬<容寬 正常顯示
xw = LoadImgW;
xh = LoadImgH;
}
if (LoadImgH>oldH && LoadImgW == (oldW/2)) {//4、原高>容高,原寬==容寬 以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
}
if (LoadImgH>oldH && LoadImgW>(oldW/2)) {//5、原高>容高,原寬>容寬
if ((LoadImgH/oldH)>(LoadImgW/(oldW/2))) {//原高大的多,以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
} else {//以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
}
if (LoadImgH>oldH && LoadImgW<(oldW/2)) {//6、原高>容高,原寬<容寬 以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
}
if (LoadImgH<oldH && LoadImgW == (oldW/2)) {//7、原高<容高,原寬=容寬 正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
if (LoadImgH<oldH && LoadImgW>(oldW/2)) {//8、原高<容高,原寬>容寬 以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
if (LoadImgH<oldH && LoadImgW<(oldW/2)) {//9、原高<容高,原寬<容寬//正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
}
×××等比縮放函數×××,9種判斷條件
xh:新高
xw:新寬
oldH:容高
oldW:容寬
LoadImgH:原高
LoadIngW:原寬
*/
function Scale() {
if (LoadImgH == oldH && LoadImgW == (oldW/2)) {//1.正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
if (LoadImgH == oldH && LoadImgW>(oldW/2)) {//2、原高==容高,原寬>容寬 以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
if (LoadImgH == oldH && LoadImgW<(oldW/2)) {//3、原高==容高,原寬<容寬 正常顯示
xw = LoadImgW;
xh = LoadImgH;
}
if (LoadImgH>oldH && LoadImgW == (oldW/2)) {//4、原高>容高,原寬==容寬 以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
}
if (LoadImgH>oldH && LoadImgW>(oldW/2)) {//5、原高>容高,原寬>容寬
if ((LoadImgH/oldH)>(LoadImgW/(oldW/2))) {//原高大的多,以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
} else {//以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
}
if (LoadImgH>oldH && LoadImgW<(oldW/2)) {//6、原高>容高,原寬<容寬 以原高爲基礎
xh = oldH;
xw = LoadImgW*xh/LoadImgH;
}
if (LoadImgH<oldH && LoadImgW == (oldW/2)) {//7、原高<容高,原寬=容寬 正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
if (LoadImgH<oldH && LoadImgW>(oldW/2)) {//8、原高<容高,原寬>容寬 以原寬爲基礎
xw = (oldW/2);
xh = LoadImgH*xw/LoadImgW;
}
if (LoadImgH<oldH && LoadImgW<(oldW/2)) {//9、原高<容高,原寬<容寬//正常顯示
xh = LoadImgH;
xw = LoadImgW;
}
}