} else {
// $$$ could be cleaner
+ // Provide next smaller power of two reduction
$scale = intval($_REQUEST['scale']);
if (1 >= $scale) {
- $scale = 1;
$powReduce = 0;
} else if (2 > $scale) {
$powReduce = 0;
- $scale = 1;
} else if (4 > $scale) {
$powReduce = 1;
- $scale = 2;
} else if (8 > $scale) {
$powReduce = 2;
- $scale = 4;
} else if (16 > $scale) {
$powReduce = 3;
- $scale = 8;
} else if (32 > $scale) {
$powReduce = 4;
- $scale = 16;
} else if (64 > $scale) {
$powReduce = 5;
- $scale = 32;
} else {
// $$$ Leaving this in as default though I'm not sure why it is...
- $scale = 8;
$powReduce = 3;
}
+ $scale = pow(2, $powReduce);
}
// Override depending on source image format