2012-04-21 5 views
1

ユーザーが画像にアプリをアップロードする方法はありますか?たとえば、50X150ピクセルの画像をアップロードする方法はありますか?50x50ピクセルの画像を3つに分割できますか?iphoneアプリのxcodeの画像を分割する

もしそうなら、誰かが特定のピクセルを選択していくつかのイメージに分割する手助けをすることができますか?

ありがとうございました!

答えて

2

使用

//メソッドがinRect以下でこのコード...:(CGRect)RECT >>>この矩形は50×50であるべきか、あなたの要件に応じて定義することができます。..

- (UIImage *)imageFromImage:(UIImage *)image inRect:(CGRect)rect { 

CGImageRef sourceImageRef = [image CGImage]; 
CGImageRef newImageRef = CGImageCreateWithImageInRect(sourceImageRef, rect); 
UIImage *newImage = [UIImage imageWithCGImage:newImageRef scale:1.0 orientation:image.imageOrientation]; 
CGImageRelease(newImageRef); 
return newImage; 
} 

For more visit this reference..

希望、これはあなたが...

+0

私はまだ目標Cにはとても新しいので、構文を理解できないようです。私は 'code'を使ってみました。UIImage * original = [info objectForKey:UIImagePickerControllerOriginalImage]; imageView.image =オリジナル; imageView1.image = [元のImageFromImage:イメージのInRect:CGRectMake(0.0、0.0、50.0、50.0)]; 'コード'が表示されますが、「表示されない@interfaceで 'UIImage'がセレクタ 'ImageFromImage:InRect'」を宣言しています "コード"メソッド呼び出しとそのエラーの正しい方向に私を導いてくれますか?ありがとうございました! – KTobiassen

+0

その時にメソッドを呼び出すと、UIImageとCGReectの値を渡す必要があります。以下のような呼び出しメソッドの例です。 'UIImage * Image = [UIImage imageNamed:@" yourimage.png "]; CGRect * rect = CGRectMake(0.0、0.0、50.0、50.0); [Self imageFromImage:image:rect]; ' – Nit

1

ヨーヨーを与えるUIImage上のカテゴリを定義を楽しむのに役立ちますU偉大な切り出し方法:私も、これを必要と

UIImage *original = ...; 
UIImage left = [original cropImageInRect:CGRectMake(0.0, 0.0, 50.0, 50.0)]; 
UIImage center = [original cropImageInRect:CGRectMake(0.0, 50.0, 50.0, 50.0)]; 
UIImage right = [original cropImageInRect:CGRectMake(0.0, 100.0, 50.0, 50.0)]; 
1

- (UIImage *)cropImageInRect:(CGRect)cropRect 
{ 
    CGImageRef image = CGImageCreateWithImageInRect(self.CGImage,cropRect); 
    UIImage *croppedImage = [UIImage imageWithCGImage:image]; 
    CGImageRelease(image); 
    return croppedImage; 
} 

は今、このカテゴリーにあなたが簡単にあなたがやりたいことができます。 UIImageのutilsカテゴリメソッドに追加されました:

// UIImage+Utls.h 

@interface UIImage (UIImage_Utls) 

- (UIImage *)subimageInRect:(CGRect)rect; 
- (NSArray *)subimagesHorizontally:(NSInteger)count; 

@end 

// UIImage+Utls.m 

#import "UIImage+Utls.h" 

@implementation UIImage (UIImage_Utls) 

- (UIImage *)subimageInRect:(CGRect)rect { 

    CGImageRef imageRef = CGImageCreateWithImageInRect([self CGImage], rect); 
    UIImage *answer = [UIImage imageWithCGImage:imageRef]; 
    CGImageRelease(imageRef); 
    return answer; 
} 

- (NSArray *)subimagesHorizontally:(NSInteger)count { 

    NSMutableArray *answer = [NSMutableArray arrayWithCapacity:count]; 
    CGFloat width = self.size.width/count; 
    CGRect rect = CGRectMake(0.0, 0.0, width, self.size.height); 

    for (int i=0; i<count; i++) { 
     [answer addObject:[self subimageInRect:rect]]; 
     rect = CGRectOffset(rect, width, 0.0); 
    } 
    return [NSArray arrayWithArray:answer]; 
} 

@end 
+0

'-subimagesHorizo​​ntally:'は甘いです! –

関連する問題