Comment puis-je faire Pivoter Une UIImage et les Données d'Image de 90 Degrés
J'ai une UIImageView qui contient une image. À la minute où l'utilisateur peut cliquer pour enregistrer l'image au sein de la UIImageView sur le disque.
Je voudrais faire en sorte que l'utilisateur peut cliquer pour faire tourner le UIImageView et aussi faire tourner les comme uimage à l'intérieur de la vue, de sorte que lorsque l'image est enregistrée, il garde la nouvelle rotation.
À la minute où j'ai
- (IBAction)rotateImage:(id)sender {
float degrees = 90; //the value in degrees
self.imagePreview.transform = CGAffineTransformMakeRotation(degrees * M_PI/180);
}
Quelqu'un peut me pointer dans la bonne direction en ce qui concerne la conservation de la rotation actuelle.
Grâce
Si vous voulez la rotation de persister après l'image est enregistrée, vous devriez être en rotation de l'UIImage, pas la UIImageView.
double possible de Comment faire pivoter UIImage
double possible de Comment faire pivoter UIImage
OriginalL'auteur ORStudios | 2013-07-28
Vous devez vous connecter pour publier un commentaire.
J'ai ce code dans mon ancienne application. Mais ce code peut être simplifié parce que vous n'avez pas besoin de la faire tourner sur la non-angle de 90 degrés.
Objective-C
Swift
Pour plus de 180 degrés, cette bascule de l'image.
Ce n'est pas la même rotation de 180 degrés (à l'envers), que le retournement (recto verso).
Ressemble le code Objective-C avait un problème avec l'application de l'échelle. Maintenant, il doit être fixé.
OriginalL'auteur Timur Bernikovich
Cela permettra de faire pivoter une image, par quelque radians.
Remarque cela fonctionne 2x et 3x rétine ainsi
CGFloat radians = DegreesToRadians(degrees);
avecCGFloat radians = degrees * (M_PI / 180.0);
pour un peu plus de "contenu" solutionl'une des rares solutions qui ont travaillé, +1, merci!
OriginalL'auteur RyanG
La surbrillance d'un UIButton n'a pas pris la bonne orientation de la normale inséré tourné image. J'ai donc eu le rafraîchissement de l'image comme @RyanG a montré. Voici la Swift 2.2 code:
OriginalL'auteur FBente
Swift version faite à partir de la réponse de @RyanG avec quelques corrections:
let rotatedSize = rotatedViewBox.frame.size; let roundedSize = CGSize(width: Int(rotatedSize.width), height: Int(rotatedSize.height)); UIGraphicsBeginImageContextWithOptions(roundedSize, false, self.scale);
OriginalL'auteur Alexander Mayatsky
Dans Swift 4
imageView.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi/2))
OriginalL'auteur iVignesh
self.imageview.transform = CGAffineTransformMakeRotation(M_PI/2);
Ou la
M_PI_2
constanteCe n'est pas de faire pivoter les données de l'image elle-même
OriginalL'auteur 123