#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