2012-06-29 2 views
1

Я добавил UIView на контроллере View.Initially я установил цвет границы на UIView, теперь он гладко просматривает границу изображения. Но при масштабировании этого вида через распознаватель жеста цвет границы будет пикселизован.Как установить ровный цвет границы на UIView?

исходный код ниже здесь

- (id)initWithImage:(UIImage*)image delegate:(id)delegat{ 
    if ((self = [super initWithImage:image])) { 
     self.layer.masksToBounds = YES; 
     self.frame = CGRectMake(self.frame.origin.x, self.frame.origin.y, self.frame.size.width+1, self.frame.size.height+1); 
     self.contentMode = UIViewContentModeCenter; 
     ratio = image.size.height/image.size.width; 
     itemType = 2; 
     self.userInteractionEnabled =TRUE; 
     self.delegate = delegat; 
     self.layer.borderColor = [UIColor redColor].CGColor; 
     self.layer.borderWidth = 4; 
     scaleFactor = 1.0; 
     rotateAngle = 0.0; 
     fontSize = 22; 
     self.contentScaleFactor = 1.0; 
     if(image != nil){ 
      frameWidth = image.size.width; 
      frameHeight = image.size.height; 
     }else{ 
      frameWidth = self.frame.size.width; 
      frameHeight = self.frame.size.height;  
     } 

     [self addGestureRecognizers]; 
    }  
    return self; 
} 

enter image description here

здесь код разворотом код

- (void)rotatePiece:(UIRotationGestureRecognizer *)gestureRecognizer{ 


    if ([gestureRecognizer state] == UIGestureRecognizerStateBegan || [gestureRecognizer state] == UIGestureRecognizerStateChanged) { 
     // To undo the action : store information 
     [[UIAppDelegate viewController] storeAction:CHUndoActionTypeRotate item:self]; 

     [gestureRecognizer view].transform = CGAffineTransformRotate([[gestureRecognizer view] transform], [gestureRecognizer rotation]); 
     [gestureRecognizer setRotation:0]; 
    } 

} 

это то, что я получил в то время как вращать вид

enter image description here

ответ

1

Это, по-видимому, довольно распространенная проблема. Вы хотите, чтобы границы были сглажены. Here is one post с решением и here is another.

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

+0

Я использую jpeg-изображение, так как я должен сделать границу для сглаживания. Я использую UIView, а не UIImageView. Как добавить прозрачную границу с одним пикселем в UIView. – StalinPusparaj

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