2014-06-16 2 views
2

내 요구 사항 이미지를 320x240의 크기로 자동으로 자르지 않고 모든 이미지를 처리 ​​할 때 스트레치가 발생하지 않습니다. 어떻게이 기능을위한 자르기 방법을 쓸 수 있습니까? 이 목록에서 이미지를 선택하면 자동으로 크기가 320x240으로 변환됩니다. 다양한 방법으로 이미지 목록을 만들 수 있습니다. 어떻게하면됩니까? 제발 조언 해주세요. 어떤 크기의 이미지를 특정 치수로자를 수 있습니까?

지금 나는 다음과 같은 코딩을 사용하고 있습니다 : http://www.abdus.me/ios-programming-tips/resize-image-in-ios/

을하지만 결과 이미지의 품질은 흐리게됩니다 좋지 않다. 어떻게이 문제를 극복 할 수 있는지 말해 주시겠습니까? 작물에 대한

+1

당신은 작물을 의미하거나 크기를 조정 . 그것이 자르기에 관한 것 인 것처럼, 이미지의 어느 부분을 가운데, 왼쪽 위 등의 자르기를 원하십니까? – rptwsthi

+0

자르기 또는 크기 조정 중 하나 일 수 있지만 품질 부족으로 320x240 크기의 결과 이미지 크기가 필요합니다 ... 자르기 의미 인 경우 자르기는 가운데에서해야합니다. –

답변

2

- 이미지의 부분 :

- (UIImage*) getSubImageFrom: (UIImage*) img WithRect: (CGRect) rect { 

    UIGraphicsBeginImageContext(rect.size); 
    CGContextRef context = UIGraphicsGetCurrentContext(); 

    // translated rectangle for drawing sub image 
    CGRect drawRect = CGRectMake(-rect.origin.x, -rect.origin.y, img.size.width, img.size.height); 

    // clip to the bounds of the image context 
    // not strictly necessary as it will get clipped anyway? 
    CGContextClipToRect(context, CGRectMake(0, 0, rect.size.width, rect.size.height)); 

    // draw image 
    [img drawInRect:drawRect]; 

    // grab image 
    UIImage* subImage = UIGraphicsGetImageFromCurrentImageContext(); 

    UIGraphicsEndImageContext(); 

    return subImage; 
} 

크기 조정를 들어 -

320 × 240에있는 UIImageView의 프레임을 넣어 다음 imageView.contentMode = UIViewContentModeScaleAspectFit;

+0

이 코드는 잘 작동합니다. 그러나 이미지가 약간 희미 해지고 있습니다. –

관련 문제