2014-05-15 65 views
0

enter image description hereiOs - 图像缩放和放大图像定位

我的问题与计算位置有关。在FRONT END中缩放INNER IMAGE,然后我需要在BACKGROUND PROCESS中找到相同的位置。如果有任何一个经验,请在这里分享一下等式或其他内容。

  • FRONT ENDFRAME IMAGE的尺寸为188x292(宽度x高度) 和较大的帧图像具有500x750(宽度x高度)的尺寸。

  • INNER IMAGE 75x75(宽度x高度)和更大INNER IMAGE 199.45x199.45(宽度x高度)

问题:当我缩放INNER IMAGEFRONT END。那就是75x75到100x100,那么我们有x和y的位置。我需要计算BACKGROUND PROCESS中的确切位置。它以编程方式用于图像缩放。

+0

做你想做的相对或确切位置?..请给多一点的解释你的问题。 –

+0

希望它是相对的.. –

+0

@SathishKumar是的它是 –

回答

1

在INNER IMAGE比例缩放后,您将拥有x和y的位置,现在将其转换为%。

如果内在形象的位置是背景内在形象的

relativeX = (x * 100)/frameImageWidth; 
relativeY = (y * 100)/frameImageHeight; 

位置将

x = (relativeX * backgroundFrameImageWidth)/100; 
y = (relativeY * backgroundFrameImageHeight)/100; 
1
CGPoint foregroundLocation = CGPointMake(x, y);  
static float xscale = BACKGROUND_IMAGE_WIDTH/FOREGROUND_IMAGE_WIDTH; 
static float yscale = BACKGROUND_IMAGE_HEIGHT/FOREGROUND_IMAGE_HEIGHT; 
CGPoint backgroundLocation = CGPointApplyAffineTransform(foregroundLocation, CGAffineTransformMakeScale(xscale, yscale));