Не могу перевернуть CGImage - PullRequest
0 голосов
/ 20 марта 2012

Что мне нужно сделать, это перевернуть CGImageRef, который является свойством conntents CALayer, слева направо.Я тщательно гуглил, чтобы найти способ, но это было напрасно.Поэтому я решил перевернуть UIImage, а затем установить его свойство CGImage в качестве содержимого для CALayer.

Итак, что я сделал:

 UIImage *src = [UIImage imageNamed:@"res/images/lizard.png"];
src = [UIImage imageWithCGImage:src.CGImage scale:1.0 orientation:UIImageOrientationRightMirrored];
UIImageView *test = [[UIImageView alloc] initWithImage:src];
[test setFrame:CGRectMake(20, 20, 50, 50)];
[self.view addSubview:test];

[lizard.layer setContents:((id)test.image.CGImage)];

, но это было напрасно,слой остался не перевернутым.то, что я сделал дальше:

UIImage *src = [UIImage imageNamed:@"res/images/lizard.png"];
UIImageView *test = [[UIImageView alloc] initWithImage:src];
[test setFrame:CGRectMake(20, 20, 50, 50)];
[self.view addSubview:test];
test.transform   = CGAffineTransformIdentity;
test.transform   = CGAffineTransformMakeScale(-1.0, 1.0);

[lizard.layer setContents:((id)test.image.CGImage)];

Но, к сожалению, это все еще не дает мне то, что мне нужно.UIImageView с именем test отображается, как и ожидалось - он переворачивается, а содержимое lizard.layer - нет.Как это могло случиться?Вы можете мне помочь?

1) Есть ли нормальный способ перевернуть содержимое CALayer?

2) Если нет, то как мне перевернуть CGImageRef для правильной установки содержимого?

1 Ответ

0 голосов
/ 20 марта 2012

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

Примените ваши преобразования к lizard.layer. Вы бы получили это.

[lizard.layer  setAffineTransform:CGAffineTransformIdentity];
[lizard.layer setAffineTransform: CGAffineTransformMakeScale(-1.0, 1.0)];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...