Я тестирую приложение iPhone на iOS 3.1.3 iPhone. Я выбираю/захватываю изображение с помощью UIImagePickerController
:
UIImagePickerController *imagePicker = [[UIImagePickerController alloc] init];
[imagePicker setSourceType:UIImagePickerControllerSourceTypeCamera];
[imagePicker setDelegate:self];
[self.navigationController presentModalViewController:imagePicker animated:YES];
[imagePicker release];
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
self.image = [info objectForKey:UIImagePickerControllerOriginalImage];
imageView.image = self.image;
[self.navigationController dismissModalViewControllerAnimated:YES];
submitButton.enabled = YES;
}
Затем я в какой-то момент отправлю его на свой веб-сервер, используя классы ASI:
ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:[NSURL URLWithString:@"http://example.com/myscript.php"]];
[request setDelegate:self];
[request setStringEncoding:NSUTF8StringEncoding];
[request setShouldContinueWhenAppEntersBackground:YES];
//other post keys/values
[request setFile:UIImageJPEGRepresentation(self.image, 100.0f) withFileName:[NSString stringWithFormat:@"%d.jpg", [[NSDate date] timeIntervalSinceNow]] andContentType:@"image/jpg" forKey:@"imageFile"];
[request startAsynchronous];
проблема: когда я делаю снимок с iphone, сохраняя его пейзаж, изображение загружается на сервер, и оно просматривается так, как вы ожидали. при съемке снимка, удерживающего телефон в портрете, изображение загружается и просматривается по мере его поворота на 90 градусов.
мое приложение настроено на работу только в портретных режимах (upsidedown и regular).
Как я могу заставить изображение всегда показывать правильную ориентацию после загрузки?
изображение кажется правильным, как показано в UIImageView (непосредственно после съемки), но просмотр на сервере говорит иначе.