2012-01-05 93 views
0

我有我的筆尖,並根據和其一二的UIImageViews根據UISlider 代碼的值調整爲: -調整圖片大小問題,iphone

-(IBAction)sliderChanged:(UISlider*)slider{ 
    CGFloat scaleFactor=slider.value; 

    markerImage.transform = CGAffineTransformMakeScale(scaleFactor,scaleFactor); 
} 

它被正確調整,但是當我合併這些圖像一起由這些代碼

UIImage *backImage=backgroundImage.image; 
UIImage *markImage=markerImage.image; 

UIGraphicsBeginImageContext(backImage.size); 

[backImage drawAtPoint:CGPointMake(0,0)]; 
[markImage drawAtPoint:CGPointMake(0,0)]; 

UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext(); 
UIGraphicsEndImageContext(); 

我得到了合併的圖像與原始大小, 也就是說在同一維度標記圖像顯示的合成圖像 在我怎樣才能在正確的比例繪製標記圖像 謝謝

回答

1

而不是drawAtPoint:,使用drawInRect:(CGRect)rect。另外,需要使用滑塊值。

0和1之間假設sliderValue,

CGRect rect = CGRectMake(0,0, markerImage.size.width*sliderValue, markerImage.size.height*sliderValue); 
[markImage drawInRect:rect]; 

編輯

CGFloat width = markerImage.size.width*sliderValue; 
CGFloat height = markerImage.size.height*sliderValue; 

CGRect rect = CGRectMake((markerImage.size.width-width)/2,(markerImage.size.height-height)/2, width, height); 
[markImage drawInRect:rect]; 
+0

這個工作,但我會放在的左上角II圖像希望這中間 – Johnykutty 2012-01-24 06:10:56

+1

我猜一次,我給基本的想法,你將能夠根據你的需要進行修改。無論如何,我已根據您的需要編輯了我的答案。 – Ilanchezhian 2012-01-24 06:18:37