2011-12-16 2 views
0

Когда я работаю с uiimageview, я хочу повернуть его под небольшим углом, и я это сделал. Но, на границе uiimageview после поворота появляются шипы, как пила. Я не знаю, почему и попытаюсь это исправить, но я не могу. Пожалуйста, помогите мне.Ошибка при повороте uiimageview

+1

Можете ли вы разместить свое изображение или что-то еще, чтобы мы могли получить представление? – Sarah

ответ

2

Пара вариантов ..

1) Если вы используете Core Graphics функции для вращения вы можете включить анти опции псевдонимов

CGContextSetAllowsAntialiasing(context, true); 
CGContextSetShouldAntialias(context, true); 

2) Добавить прозрачную границу с 1 пиксель на вашем изображении на все 4 стороны.

Еще одна вещь, есть технический термин для шипов, которые вы видели, и это псевдонимы. И методы предотвращения наложения псевдонимов называются методами сглаживания. Надеюсь это поможет.

+0

tks ребята! :) он работает – kent

+0

@kent не забудьте принять ответы, которые вам помогли - вот как работает StackOverflow и помогает другим. –

+0

@ Ник хорошо :) gotcha – kent

0

Возьмите UIView как subView и поместите UIImageView на subView. Сохраняйте размер subView и UIImageView.

Теперь используйте «UIViewAnimationTransitionFlipFromRight» или «UIViewAnimationTransitionFlipFromLeft» с таймером.

0

Что вы можете сделать легко, так это добавить прозрачную рамку 1px вокруг вашего изображения. Так что если ваш образ, скажем, 50x50 пикселей, вам нужно сделать это 52x52, чтобы внешние пиксели были прозрачными. Когда вы будете вращаться, теперь он должен выглядеть нормально.

1

Спасибо всем вам, ребята :) Мой друг показал мне другой способ исправить это. Я думаю, что этот способ лучше, чем использование прозрачного приграничного трюка. Он изменил атрибут в файле info plist, то есть «Renders with edge antialisasing», YES. И все становится хорошо :). Я надеюсь, что это поможет кому-то получить такую ​​же проблему со мной :)

+1

@ У Кришнабхадры был правильный ответ. – Steve

Смежные вопросы