0

我需要使用和image heightwidth我的. 但是当我发现使用的大小时800*800imageios simulatorimage

image.size.width and image.size.height

它给了我315*120这是不正确的,为什么会这样?

- (void)elcImagePickerController:(ELCImagePickerController *)picker didFinishPickingMediaWithInfo:(NSArray *)info 
{
    NSLog(@"%@",info);

    int temp = [[DataManager sharedObj] imageCount];

    for(NSDictionary *dict in info) 
    {
        [[DataManager sharedObj]  setImageCount:temp+1];

        NSMutableDictionary* dataDic = [[NSMutableDictionary alloc] init];

        UIImage* img = [dict objectForKey:UIImagePickerControllerOriginalImage];

        NSLog(@"%.2f",img.size.width);
        NSLog(@"%.2f",img.size.height);
     }

}
4

2 回答 2

1

试着打电话image.frame = cgrectmake(x, y, 800, 800)

如果你有一个UIImageView *image而不是UIImage *image,你可能会得到视图的框架而不是图像。


已解决:
更改fullScreenImagefullResolutionImage您的ELCImagePickerController.m.

于 2012-08-01T09:14:13.923 回答
0

您可以使用此获取图像大小

UIImage *imageS = [dict objectForKey:UIImagePickerControllerOriginalImage];

NSLog(@"width = %.2f, height = %.2f", imageS.size.width, imageS.size.height);
NSLog(@"Image Size = %@",NSStringFromCGSize(imageS.size));

两条线都可以。

它会正确打印。请再次检查您的模拟器图像。如果您通过谷歌添加它,我可能会保存图像缩略图而不是原始图像,这就是您错误大小的原因。否则获取图像大小的方法是正确的。

于 2012-08-01T10:15:57.823 回答