Тип QML CameraCapture
Интерфейс для захвата изображений камеры Подробнее...
| Заявление об импорте: | import QtMultimedia 5.8 |
Свойства
- capturedImagePath : строка
- errorString : строка
- ready : логическое значение
- resolution : размер
- supportedResolutions : список<размер>
Сигналы
- captureFailed(requestId, message)
- imageCaptured(requestId, preview)
- imageMetadataAvailable(requestId, key, value)
- imageSaved(requestId, path)
Методы
- cancelCapture()
- capture()
- captureToLocation(location)
- setMetadata(key, value)
Подробное описание
Этот тип позволяет захватывать статичные изображения и получать уведомления, когда они становятся доступными или сохраняются на диск. Вы можете настроить разрешение захваченного изображения и место, куда должно быть сохранено изображение.
CameraCapture является дочерним элементом Camera (как свойство imageCapture) и не может быть создан напрямую.
Item {
width: 640
height: 360
Camera {
id: camera
imageCapture {
onImageCaptured: {
// Show the preview in an Image
photoPreview.source = preview
}
}
}
VideoOutput {
source: camera
focus : visible // to receive focus and capture key events when visible
anchors.fill: parent
MouseArea {
anchors.fill: parent;
onClicked: camera.imageCapture.capture();
}
}
Image {
id: photoPreview
}
} Документация по свойствам
capturedImagePath : строка
Это свойство содержит расположение последнего захваченного изображения.
errorString : строка
Это свойство содержит сообщение об ошибке, связанное с последним захватом.
ready : логическое значение
Это свойство содержит логическое значение, указывающее, готова ли камера к захвату фотографий.
Вызов capture(), когда ready равно false запрещено и приводит к ошибке.
resolution : размер
Это свойство содержит разрешение/размер изображения, которое нужно захватить. Если пусто, система выбирает подходящее разрешение.
См. также supportedResolutions.
supportedResolutions : список<размер>
Это свойство содержит список разрешений, которые поддерживаются для захвата. Информация может быть использована для установки допустимого значения resolution. Если камера не загружена, список будет пустым.
Это свойство QML было добавлено в Qt 5.9.
См. также resolution.
Документация по сигналам
captureFailed(requestId, message)
Этот сигнал излучается при возникновении ошибки во время захвата с requestId. Детальное сообщение доступно в message.
Соответствующий обработчик — onCaptureFailed.
imageCaptured(requestId, preview)
Этот сигнал излучается, когда изображение с requestId было захвачено, но еще не сохранено в файловой системе. Параметр preview может быть использован в качестве URL, передаваемого элементу Image.
Соответствующий обработчик — onImageCaptured.
См. также imageSaved.
imageMetadataAvailable(requestId, key, value)
Этот сигнал излучается, когда для изображения с requestId доступны новые метаданные с ключом key и значением value.
Соответствующий обработчик — onImageMetadataAvailable.
См. также imageCaptured.
imageSaved(requestId, path)
Этот сигнал излучается после того, как изображение с requestId было записано в файловую систему. path — локальный путь к файлу, а не URL.
Соответствующий обработчик — onImageSaved.
См. также imageCaptured.
Документация по методам
cancelCapture()
Отменить запросы на запуск захвата изображения.
capture()
Запустить захват изображения. Сигналы imageCaptured и imageSaved будут излучены по завершении захвата.
Изображение будет захвачено по умолчанию в системное расположение, обычно QStandardPaths::writableLocation(QStandardPaths::PicturesLocation) для статичных изображений или QStandardPaths::writableLocation(QStandardPaths::MoviesLocation) для видео.
Камера сохраняет все параметры захвата, такие как настройки экспозиции или параметры обработки изображений, поэтому изменения параметров камеры после вызова capture() не влияют на предыдущие запросы на захват.
capture() возвращает параметр requestId захвата, используемый с сигналами imageExposed(), imageCaptured(), imageMetadataAvailable() и imageSaved().
См. также ready.
captureToLocation(location)
Запустить захват изображения в указанное location. Сигналы imageCaptured и imageSaved будут излучены по завершении захвата.
CameraCapture::captureToLocation возвращает параметр requestId захвата, используемый с сигналами imageExposed(), imageCaptured(), imageMetadataAvailable() и imageSaved().
Если приложение не может записать в указанное location расположение, CameraCapture излучит ошибку. Наиболее вероятные причины, по которым приложение не может записать в расположение, это неправильный путь, отсутствие расположения или отсутствие разрешения на запись в указанное расположение.
setMetadata(key, value)
Устанавливает определённый ключ метаданных key в value для последующих захватов изображений.
См. также QMediaMetaData.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtmultimedia-cameracapture.html