Drücken, um die Kamera zu zoomen

7

Ich versuche, die Kamera zu zoomen, aber ich habe zwei Probleme. Erstens erlaubt es dem Benutzer, viel zu viel und viel zu weit zu zoomen. Zweitens, wenn ich ein Bild mache, nimmt es nicht die vergrößerte Ansicht. Hier ist mein Code für die Pinch-Funktion ...

%Vor%

Sagen Sie mir, wenn Sie noch mehr Code sehen müssen. Danke!

    
John Doe 16.10.2015, 22:38
quelle

5 Antworten

8

Ich habe die gleichen Probleme mit der Kamera-Implementierung erlebt. Um das zu lösen, müssen Sie zwei Dinge wissen.

  • Der Max- und Min-Zoom muss innerhalb eines Wertes liegen, sonst wird die Kamera zu stark zoomen.
  • Wie bei dem eigentlichen Bild, das das gezoomte Bild nicht speichert, ist es ein häufiger Fehler, den viele Online-Lösungen nicht abdecken. Dies liegt daran, dass Sie nur den Zoom der Ansicht ändern und nicht den Zoom von AVCaptureDevice .

Um die zwei Dinge zu ändern, brauchen Sie etwas wie folgt:

%Vor%

Wie Sie sehen können, verwende ich eine Klassenvariable für das Videogerät ( videoDevice ), um den Überblick über das Aufnahmegerät zu behalten, das ich für die visuelle Komponente verwende. Ich beschränke den Zoom auf einen bestimmten Bereich und verändere die Zoom-Eigenschaft auf dem Gerät und nicht die Ansicht selbst!

    
Ritvik Upadhyaya 28.12.2015, 05:42
quelle
15

Swift 3.0

%Vor%     
Hanny 21.03.2017 13:23
quelle
1
%Vor%     
Chathurka 18.08.2016 09:49
quelle
1

auf der Ritvik Upadhyaya erweitern Antwort, müssen Sie auch den vorherigen Zoomfaktor speichern Sie die neuen zu berechnen, würden Sie nicht das in dem normalen Zoom wollen jedes Mal, wenn Sie Ihr heben zurücksetzen Finger und versuchen erneut zu zoomen.

%Vor%     
Chan Jing Hong 10.01.2017 14:04
quelle
0

Wenn Sie eine manuelle ZoomTo (2.0) -Funktion benötigen, können Sie diese verwenden

%Vor%     
Thyselius 29.10.2016 21:29
quelle

Tags und Links