मुझे कैमरे से UIimages मिल रहा है और उन्हें प्रदर्शित करने के लिए UIImageViews को असाइन किया जा रहा है। जब मैं ऐसा करता हूं तो कैमरा मुझे 1200 x 1600 पिक्सेल छवि देता है जिसे मैं अपने आवेदन में UIImageView को असाइन करता हूं। छवि को इस स्थिति के तहत छवि दृश्य में अपेक्षित के रूप में प्रदर्शित किया गया है। हालांकि, जब मैं UIImageView को निर्दिष्ट करने से पहले पुनर्प्राप्त यूआईएममेज का पुन: प्रयास करने का प्रयास करता हूं, तो छवि अपेक्षित के रूप में आकार बदल रही है लेकिन उसमें कहीं समस्या है (RESIZING कोड में?) मेरे UIImage को रोका जा रहा है ... नतीजतन, जब मैं आकृति परिवर्तन UIImage एक UIImageView करने के लिए छवि 90 डिग्री घुमाया जाता है और पहलू अनुपात के रूप में (1200 x 1600 पिक्सल) फैला दिखाई देता है अपरिवर्तित था ...कैमरे से खींचे गए UIimages का आकार बदलना UIimage को भी रूट करता है?
मैं इस का उपयोग कर रहा कैमरा से एक UIImage प्राप्त करने के लिए आवंटित:
- (void) imagePickerController:(UIImagePickerController*)picker didFinishPickingMediaWithInfo:(NSDictionary*)info
{
myImg = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
myResizedImg = [self resizeImage:myImg width:400 height:533];
[myImageView setImage:myResizedImg];
}
मैं इस का उपयोग कर रहा आकार बदलने के लिए:
-(UIImage *)resizeImage:(UIImage *)anImage width:(int)width height:(int)height
{
CGImageRef imageRef = [anImage CGImage];
CGImageAlphaInfo alphaInfo = CGImageGetAlphaInfo(imageRef);
if (alphaInfo == kCGImageAlphaNone)
alphaInfo = kCGImageAlphaNoneSkipLast;
CGContextRef bitmap = CGBitmapContextCreate(NULL, width, height, CGImageGetBitsPerComponent(imageRef), 4 * width, CGImageGetColorSpace(imageRef), alphaInfo);
CGContextDrawImage(bitmap, CGRectMake(0, 0, width, height), imageRef);
CGImageRef ref = CGBitmapContextCreateImage(bitmap);
UIImage *result = [UIImage imageWithCGImage:ref];
CGContextRelease(bitmap);
CGImageRelease(ref);
return result;
}
प्रश्न: मैं पिक्सल घूर्णन के बिना कैमरे से खींचा गया UIImage कैसे उपयोग करूं?
हां। महान जवाब - धन्यवाद। – RexOnRoids
बस मुझे जो चाहिए (एक अलग परियोजना के लिए)। धन्यवाद! –
धन्यवाद, यह शानदार है! –