Fix wrong decompression scale calculation
This commit is contained in:
parent
0e8dc82891
commit
5dab8f0973
|
@ -267,14 +267,14 @@ static const CGFloat kDestSeemOverlap = 2.0f; // the numbers of pixels to over
|
|||
CGSize sourceResolution = CGSizeZero;
|
||||
sourceResolution.width = CGImageGetWidth(sourceImageRef);
|
||||
sourceResolution.height = CGImageGetHeight(sourceImageRef);
|
||||
float sourceTotalPixels = sourceResolution.width * sourceResolution.height;
|
||||
CGFloat sourceTotalPixels = sourceResolution.width * sourceResolution.height * image.scale * image.scale;
|
||||
// Determine the scale ratio to apply to the input image
|
||||
// that results in an output image of the defined size.
|
||||
// see kDestImageSizeMB, and how it relates to destTotalPixels.
|
||||
float imageScale = kDestTotalPixels / sourceTotalPixels;
|
||||
CGFloat imageScale = sqrt(kDestTotalPixels / sourceTotalPixels);
|
||||
CGSize destResolution = CGSizeZero;
|
||||
destResolution.width = (int)(sourceResolution.width*imageScale);
|
||||
destResolution.height = (int)(sourceResolution.height*imageScale);
|
||||
destResolution.width = (int)(sourceResolution.width * imageScale);
|
||||
destResolution.height = (int)(sourceResolution.height * imageScale);
|
||||
|
||||
// device color space
|
||||
CGColorSpaceRef colorspaceRef = SDCGColorSpaceGetDeviceRGB();
|
||||
|
|
Loading…
Reference in New Issue