używam następujący kod, aby zapisać i załadować zdjęcia, które mam wybrać z każdej biblioteki lub podjąć korzystania z aparatu:Zapisz UIImage, załaduj go w nieprawidłowym kierunku
//saving an image
- (void)saveImage:(UIImage*)image:(NSString*)imageName {
NSData *imageData = UIImagePNGRepresentation(image); //convert image into .png format.
NSFileManager *fileManager = [NSFileManager defaultManager];//create instance of NSFileManager
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); //create an array and store result of our search for the documents directory in it
NSString *documentsDirectory = [paths objectAtIndex:0]; //create NSString object, that holds our exact path to the documents directory
NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.png", imageName]]; //add our image to the path
[fileManager createFileAtPath:fullPath contents:imageData attributes:nil]; //finally save the path (image)
NSLog(@"image saved");
}
//loading an image
- (UIImage*)loadImage:(NSString*)imageName {
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString *fullPath = [documentsDirectory stringByAppendingPathComponent:[NSString stringWithFormat:@"%@.png", imageName]];
return [UIImage imageWithContentsOfFile:fullPath];
}
ten sposób ustawić zbierane wizerunek mają być pokazane w moim UIImageView
:
imgView.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
jednak, kiedy mogę odebrać i obraz i ustawić go pokazać w moim UIImageView
to jest w porządku, ale kiedy załadować ten obraz często jest niewłaściwa orientacja. Jakieś pomysły? Ktoś to doświadczył lub wiedział, jak rozwiązać ten problem?
Dzięki.
EDIT:
Wydaje się więc, jeśli załadować zdjęcie, które zostało zrobione zdjęcie w układzie pionowym do góry nogami, to ładuje w tym kierunku, jeśli wziąć zdjęcie w krajobrazie lewo ładuje w tym kierunku. Wszelkie pomysły, jak sobie z tym poradzić? Niezależnie od orientacji, którą ładują, zawsze zwracają jako UIImageOrientationUp.
Wystarczy spojrzeć na UIImageOrientationUp dla dokumentacji UIImage. możesz ustawić właściwość dla imageOrientation obiektu UIImage. –
Jak jednak zastosować tę orientację? Przyjrzałem się i wydaje mi się, że jest to tylko dla porównań, a rotacja musi być wykonana ręcznie. –
Sprawdź moją edycję. –