6
votes

Comment recadrer l'image après la prise de la caméra UiImagePicker?

J'essaie de permettre à l'utilisateur de prendre des images de format de format 16x9 pour ressembler à de belles photos HD. J'utilise le cameraviewoverlay pour superposer des barres noires sur les deux bouts, mais lorsque l'image est prise, comment puis-je recadrer le haut et le bas sans redimensionner ou changer l'échelle de l'image?

Merci.


0 commentaires

3 Réponses :


2
votes

Il y a plusieurs poteaux sur la façon d'échouer / récolter une uiimage que vous recevez de la caméra, comme Celui-ci .

C'est un peu plus délicieux que prévu, car les images de la caméra sont tournées, vous devez donc penser aux rotations même si vous ne faites que recadrer.


2 commentaires

Je ne voudrais pas mettre celui-ci comme la bonne réponse. Depuis la question concerne la culture seulement. La solution que vous signalez dans cette réponse est une solution de vous-même, et est également spécifique à l'échelle et à la récolte. Je n'ai pas trouvé de solution pour récolter une image extraite de la caméra.


@Rigovides pouvez-vous s'il vous plaît poster la solution?



1
votes

Vous pouvez ajouter "sélecteur.imagediting = YES" à votre code lorsque vous prenez l'image. Ensuite, vous devez définir les propriétés ImageView dans le constructeur d'interface: Attributs de vue de l'image -> Vue -> Mode -> Fit de l'aspect ou une autre option comme vous le souhaitez


2 commentaires

Je pense que vous voulez dire "Picker.AlloWediting = Oui"


De quelle image parlez-vous? Le choisi parmi UiImagePickerController?



1
votes

Vérifiez cette solution par Ming Yang. https://github.com/myang-git/ios-Image-crop-voyer

Il permet à l'utilisateur de recadrer l'image en glissant ou en faisant glisser les bords d'un rectangle autour de la partie requise de l'image. Je suppose que ce code peut être modifié en fonction de votre recadrage besoin d'être automatique ou manuel.

Il est codé dans l'objectif-c. Vous devrez peut-être que ce soit soit de la coder dans Swift ou construit simplement un en-tête de pontage pour connecter le code de l'objectif-C avec un code SWIFT.


0 commentaires