0

これはかなり基本的なタスクのように聞こえますが、検索などを試みましたが、結果はありませんでした

たとえば、これは私がやろうとしていることの例です

画像を読み込む

イメージマップ

UIImage へのイメージ マップへ

幅と高さを指定して x,y から画像をリクエストします。

例えば:

-(UIImage *) loadImgFromImageMap:(UIImage *)map withRect:(CGRect)dimensions;

例として。たとえば、{64, 0, 64, 64} を rect として渡すと、結果は次のようになります。

UIImageの結果

助言がありますか?:)

よろしく

ティム・エリス

4

1 に答える 1

0

もちろん、投稿するとすぐに、他の場所で答えが見つかります...

探している人のために、私はここでそれを見つけました

UIImage のトリミング

使用したコードは基本的に同じですが、簡単にするために UIImage に追加します

興味のある方はこちら

//The .h file
@interface UIImage (crop)
- (UIImage *)crop:(CGRect)rect;
@end

メインファイル

//The .m file
@implementation UIImage (crop)

- (UIImage *)crop:(CGRect)rect {
    if (self.scale > 1.0f) {
        rect = CGRectMake(rect.origin.x * self.scale,
                          rect.origin.y * self.scale,
                          rect.size.width * self.scale,
                          rect.size.height * self.scale);
    }

    CGImageRef imageRef = CGImageCreateWithImageInRect(self.CGImage, rect);
    UIImage *result = [UIImage imageWithCGImage:imageRef scale:self.scale orientation:self.imageOrientation];
    CGImageRelease(imageRef);
    return result;
}

@end

今では非常に簡単です。

これがサンプルです:)

UIImage *image = [UIImage imageNamed:@"imgMap.png"];
CGRect frame = CGRectMake (0, 0, 40, 40); //Change this to whatever the frame should be
UIImage *cropped = [image crop:frame];
于 2012-10-25T04:52:04.960 に答える