ユーザーが自分のスケジュールをアプリに読み込んで表示できるアプリを作成しています。UIImageViewで画像がぼやけて表示される
画像をロードする前に編集することが許可されている場合、それは完全に現れる:
ユーザが画像を「選択」したら、それはぼやけUIImageView
に表示:
ここではそれがわずかにズームさ:
画像が完全に事前に表示されるため、画像の解像度は問題ありません。 これをどのようにぼかすことができますか?
UIScrollView
のUIImageView
をズームする基本的な方法を使用しています。
ここに画像を割り当てるためのコードです。 zoomscrollはUIScrollView
とmyscheduleですUIImageView
です:
-(void) imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[self dismissModalViewControllerAnimated:YES];
//Obtaining saving path
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *imagePath = [documentsDirectory stringByAppendingPathComponent:@"myschedule.png"];
//Extracting image from the picker and saving it
NSString *mediaType = [info objectForKey:UIImagePickerControllerMediaType];
if ([mediaType isEqualToString:@"public.image"]){
UIImage *editedImage = [info objectForKey:UIImagePickerControllerEditedImage];
NSData *webData = UIImagePNGRepresentation(editedImage);
[webData writeToFile:imagePath atomically:YES];
myschedule.image = editedImage;
[zoomscroll addSubview:myschedule];
zoomscroll.contentSize = CGSizeMake(myschedule.frame.size.width , myschedule.frame.size.height);
zoomscroll.minimumZoomScale = 1.0;
zoomscroll.maximumZoomScale = 4.0;
}
}
ありがとうございました!
ユーザーが画像を選択したときに(コード)はどうなりますか?イメージビューのイメージを再設定しているのか、イメージビューのプロパティを変更していますか? –
コードが追加されました。私はそこに問題があるとは思わないが – DGund
imageViewではなくPDFビューアを使ってみたことがありますか?問題は、ズームしたときに画像ビューが高解像度で再描画されないことです。 – endy