Qt 6.8 Как заставить камеру QML снова сфокусироваться ⇐ Android

Форум для тех, кто программирует под Android
Anonymous
Qt 6.8 Как заставить камеру QML снова сфокусироваться

Сообщение Anonymous »

Я переношу приложение Android Qt 5.7 на Qt 6.8.
Приложение использует модуль камеры QML для съемки фотографий, а также использует «невидимую кнопку», охватывающую почти всю область просмотра, для принудительной перефокусировки. камеры.
Связанный код для достижения этой цели в Qt 5.7:

Код: Выделить всё

    // Tap-Focus operation
CameraInvisibleButton {
id: focusTapArea
anchors.top: parent.top
anchors.left: parent.left
width: parent.width
height: parent.height - 2*captureButton.height
visible: camera.cameraStatus == Camera.ActiveStatus && camera.focus.isFocusModeSupported(Camera.FocusAuto)
opacity: 0

onClicked: {
console.info("focusTap clicked. Camera lockStatus:", camera.lockStatus)
if (camera.lockStatus == Camera.Searching)
return;
camera.unlock();
camera.searchAndLock();
}
}
Связанные функции приведенного выше фрагмента кода (camera.unlock()/lock()/searchAndLock()) устарели. В документации Qt-6 упоминается:

На оборудовании, которое его поддерживает, QCamera позволяет настраивать фокус и масштабирование. Это также включает в себя? такие функциональные возможности, как режим «Макро» для работы крупным планом (например, считывание штрих-кодов или распознавание букв) или «прикосновение для фокусировки» — указание интересной области изображения, на которой оборудование пытается сфокусироваться.
https ://doc.qt.io/qt-6/qml-qtmultimedia-camera.html#focusPoint-prop

...но нет пример того, как достичь операцию «коснитесь для фокусировки».
У вас есть какие-нибудь идеи?
PS: Мне не интересно фокусироваться на конкретной точке касания, я просто хочу принудительно повторно сфокусировать камеру на точку фокусировки по умолчанию.

Подробнее здесь: https://stackoverflow.com/questions/792 ... ocus-again

Вернуться в «Android»