IOS获取图片的方式以及图片的压缩

#pragma mark -- 从用户相册获取图片

- (void)getPhotoFromUserPhoto{

    UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

    imagePicker.delegate = self;

    // 获取图片的来源

    imagePicker.sourceType = UIImagePickerControllerSourceTypePhotoLibrary;

    /*

    UIImagePickerControllerSourceTypePhotoLibrary(系统默认的 从相册获取图片),

    UIImagePickerControllerSourceTypeCamera(摄像头获取图片),

    UIImagePickerControllerSourceTypeSavedPhotosAlbum

     */

    imagePicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

    // 是否允许编辑

    imagePicker.allowsEditing = YES;

    [self presentViewController:imagePicker animated:YES completion:nil];

}

- (void)getImageFromCamera{

    UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];

        imagePicker.delegate = self;

    imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;

    // 注释掉的打开相机的方法

//    if ([UIImagePickerController isSourceTypeAvailable:UIImagePickerControllerSourceTypeCamera]) {

//         imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;

//        imagePicker.mediaTypes = [UIImagePickerController availableMediaTypesForSourceType:imagePicker.sourceType];

//    }

    imagePicker.modalTransitionStyle = UIModalTransitionStyleCoverVertical;

    imagePicker.allowsEditing = YES;

    [self presentViewController:imagePicker animated:YES completion:nil];

}

#pragma mark ---- UIImagePickerControllerDelegate

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info

{

    //初始化imageNew为从相机中获得的--

    

    UIImage *imageNew = [info objectForKey:@"UIImagePickerControllerOriginalImage"];

    

    //设置image的尺寸

    

    CGSize imagesize = imageNew.size;

    

    imagesize.height =626;

    

    imagesize.width =413;

    

    //对图片大小进行压缩--

    

    imageNew = [self imageWithImage:imageNew scaledToSize:imagesize];

    

    NSData *imageData = UIImageJPEGRepresentation(imageNew,0.00001);

   NSLog(@"%s -- %d %@",__FUNCTION__,__LINE__,imageData);

}

//对图片尺寸进行压缩--


-(UIImage*)imageWithImage:(UIImage*)image scaledToSize:(CGSize)newSize


{

    // Create a graphics image context

    UIGraphicsBeginImageContext(newSize);

    // Tell the old image to draw in this new context, with the desired

    // new size

    [image drawInRect:CGRectMake(0,0,newSize.width,newSize.height)];

    

    // Get the new image from the context

    UIImage* newImage = UIGraphicsGetImageFromCurrentImageContext();


    // End the context

    UIGraphicsEndImageContext();

    

    // Return the new image.

    

    return newImage;

    

}

- (void)didReceiveMemoryWarning {

    [super didReceiveMemoryWarning];

    // Dispose of any resources that can be recreated.

}


@end



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值