UIImageJPEGRepresentation и UIImagePNGRepresentation возвращает ноль в iOS 13 - PullRequest
1 голос
/ 19 сентября 2019

В моем приложении я использую средство выбора изображений, чтобы выбрать изображение на iPhone.После того, как изображение было выбрано, я делаю:

data = UIImageJPEGRepresentation(image, 1.0);

На iOS 12.4.1 и ниже, все работает нормально, если я выбираю изображение PNG или JPEG.

На iOS 13, JPGработает нормально, но PNG нет.

Если я выберу JPG:

data = UIImageJPEGRepresentation(image, 1.0); // works
data = UIImagePNGRepresentation(image); // works

Но если я выберу PNG:

data = UIImageJPEGRepresentation(image, 1.0); // data is nil
data = UIImagePNGRepresentation(image); // data is nil

Я посмотрел на некоторые другиевопросы здесь и попытался скопировать изображение:

UIGraphicsBeginImageContext(image.size);
[image drawInRect:CGRectMake(0, 0, image.size.width, image.size.height)];
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

Затем, когда я делаю

data = UIImageJPEGRepresentation(newImage, 1.0);

это не ноль, но я получаю полностью белое изображение.

У кого-нибудь есть идея для обхода этого?

1 Ответ

0 голосов
/ 22 сентября 2019

Эта проблема решена в бета-версии 13.1.

...