Как я могу получить путь к файлу из UIImage?
обычно это наоборот, вы используете путь для отображения изображения. Мне было интересно, можете ли вы получить путь, если у вас уже есть изображение.
3 ответов
если у вас уже есть изображение, т. е. вы добавили файл в свои ресурсы, вы можете использовать это, чтобы получить путь к файлу;
NSString *string = [[NSBundle mainBundle] pathForResource:@"IMAGE_FILE_NAME" ofType:@"jpg"]; // or ofType:@"png", etc.
Я не верю, что можно получить его непосредственно из UIImage.
лучший способ-сохранить изображение в каталог, то у вас будет путь к файлу.
//image is your UIImage;
if (image != nil)
{
NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory,
NSUserDomainMask, YES);
NSString *documentsDirectory = [paths objectAtIndex:0];
NSString* path = [documentsDirectory stringByAppendingPathComponent:
@"test.png" ];
NSData* data = UIImagePNGRepresentation(image);
[data writeToFile:path atomically:YES];
}
path
будет твой путь.
после создания UIImage данные изображения загружаются в память и больше не подключаются к файлу на диске. Таким образом, файл может быть удален или изменен без последствий для UIImage, и нет никакого способа получить исходный путь от UIImage.