Sto cercando di modificare un'immagine acquisita e salvarla nella galleria. Ho effettuatoRitaglio UIImagePickerControllerOriginalImage utilizzando UIImagePickerControllerCropRect restituisce un'immagine errata
UIImagePickerController *picker=[[UIImagePickerController alloc] init];
picker.allowsEditting=YES;
Desidero salvare l'immagine nella parte quadrata modificabile e salvarla nella galleria. So che posso fare uso di [info objectForKey:@"UIImagePickerControllerEditedImage"]
per salvare l'immagine modificata. Ma questo mi restituisce sempre un'immagine della dimensione 320x320 (iPad Mini) e l'immagine è di scarsa qualità. Così ho pensato di ritagliare l'immagine originale [info objectForKey:@"UIImagePickerControllerOriginalImage"]
utilizzando il seguente codice:
CGRect rect = [[info objectForKey:@"UIImagePickerControllerCropRect"]CGRectValue];
UIImage *originalImage=[info objectForKey:@"UIImagePickerControllerOriginalImage"];
CGImageRef imageRef = CGImageCreateWithImageInRect([originalImage CGImage], rect);
UIImage *result = [UIImage imageWithCGImage:imageRef
scale:originalImage.scale
orientation:originalImage.imageOrientation];
CGImageRelease(imageRef);
Poi ho salvato sia l'immagine risultato e l'immagine modificata ([info objectForKey:@"UIImagePickerControllerEditedImage"]
). Se confrontate entrambe le immagini, corrispondono a dint. Ho allegato le immagini modificate e ritagliate. Il mio obiettivo finale è ritagliare l'immagine originale nell'immagine nella porzione quadrata modificabile e salvarla nella galleria con una buona qualità dell'immagine. Qualcuno può dirmi per favore su cosa esattamente va storto qui e aiutarmi a risolvere questo problema?
Grazie in anticipo.
Ho avuto un problema simile e appena scritto un radar e modifiche disabilitate. Quindi ho pulito la tastiera: p – fzwo
, sarei grato se tu possa essere più specifico sulla soluzione. Ne ho molto bisogno. – CrazyDeveloper
Come ho detto, mi sono arreso, ho presentato una segnalazione di bug su https://bugreport.apple.com (internamente, il bug tracker di Apple si chiama "Radar"), e si è trasferito senza di esso. Se davvero, davvero avevo bisogno della funzionalità, cercavo componenti open source che la duplicassero, o la scrissi da sola. Devo ammettere, però, che è un po 'strano che non riceverai * nessuna * risposta. Hai cercato sul sito per vedere se altri hanno avuto lo stesso problema? – fzwo