Sur cette page

ImageCapture QML Type

Une interface permettant de capturer des images à partir d'une caméra. En savoir plus...

Import Statement: import QtMultimedia

Propriétés

Signaux

Méthodes

Description détaillée

Ce type vous permet de capturer des images fixes et d'être averti lorsqu'elles sont disponibles ou enregistrées sur le disque.

Item {
    width: 640
    height: 360

    CaptureSession {
        imageCapture : ImageCapture {
            id: imageCapture
        }
        camera: Camera {
            id: camera
        }

        videoOutput: videoOutput
    }
    VideoOutput {
        id: videoOutput
        anchors.fill: parent

        MouseArea {
            anchors.fill: parent;
            onClicked: imageCapture.capture();
        }
    }

    Image {
        id: photoPreview
        source: imageCapture.preview // always shows the last captured image
    }
}

Documentation sur les propriétés

error : enumeration [read-only]

Cette propriété contient le type de la dernière erreur survenue. Elle peut prendre l'une des valeurs suivantes.

ConstanteDescription
ImageCapture.NoErrorAucune erreur.
ImageCapture.NotReadyErrorLe service n'est pas encore prêt pour la capture.
ImageCapture.ResourceErrorLe périphérique n'est pas prêt ou n'est pas disponible.
ImageCapture.OutOfSpaceErrorPlus d’espace disponible sur l’appareil.
ImageCapture.NotSupportedFeatureErrorL'appareil ne prend pas en charge la capture d'images fixes.
ImageCapture.FormatErrorLe format actuel n'est pas pris en charge.

Voir également errorString.

errorString : string [read-only]

Cette propriété contient le dernier message d'erreur qui s'est produit.

Voir également error.

fileFormat : enumeration

Cette propriété indique le format de fichier dans lequel l'image sera enregistrée. Elle peut prendre l'une des valeurs suivantes.

ConstanteDescription
UnspecifiedFormatAucun format spécifié
JPEG.jpg ou format « .jpeg »
PNG.png format
WebP.webp format
Tiff.tiff format

metaData : mediaMetaData

Cette propriété contient les métadonnées qui seront intégrées à l'image.

preview : string [read-only]

Cette propriété contient l'URL de la dernière image capturée. Elle peut être associée à la propriété « source » d'un élément Image afin d'afficher la dernière image capturée.

CaptureSession {
    camera: Camera {}
    imageCapture: ImageCapture {
        id: capture
    }
}
Image {
    source: capture.preview
}

Voir également saveToFile.

quality : enumeration

Cette propriété stocke l'indicateur de qualité lors de l'enregistrement de l'image capturée. Elle peut prendre l'une des valeurs suivantes.

ConstanteDescription
VeryLowQualityTrès faible
LowQualityFaible
NormalQualityNormal
HighQualityÉlevé
VeryHighQualityTrès élevé

readyForCapture : bool [read-only]

Cette propriété contient une valeur de type booléen indiquant si l'appareil photo est prêt à prendre des photos ou non.

L'appel de la méthode ` capture()` ou ` captureToFile()` alors que l'appareil photo est prêt et que ` false ` est défini n'est pas autorisé et génère une erreur.

supportedFormats : list<FileFormat> [read-only, since 6.10]

Contient une liste des formats de fichiers pris en charge.

Cette propriété a été introduite dans Qt 6.10.

Voir également fileFormat.

Documentation sur les signaux

errorOccurred(id, error, errorString)

Ce signal est émis lorsqu'une erreur survient lors de la capture avec l'id. error est une énumération de type ImageCapture::Error. Un message descriptif est disponible dans errorString.

Remarque : le gestionnaire correspondant est onErrorOccurred.

Voir également error et errorString.

imageCaptured(requestId, preview)

Ce signal est émis lorsqu'une image dont l'identifiant demandé est requestId a été capturée mais n'a pas encore été enregistrée dans le système de fichiers. Le paramètre preview correspond à l'image capturée.

Remarque : le gestionnaire correspondant est onImageCaptured.

Voir également imageSaved et preview.

imageMetadataAvailable(id, metaData)

Ce signal est émis lorsque l'image dont l'id est demandée comporte une nouvelle metaData.

Remarque : le gestionnaire correspondant est onImageMetadataAvailable.

Voir également imageCaptured.

imageSaved(id, fileName)

Ce signal est émis une fois que l'image dont l'id est demandée a été enregistrée dans le système de fichiers. L'fileName correspond à un chemin d'accès local au fichier, et non à une URL.

Remarque : le gestionnaire correspondant est onImageSaved.

Voir également imageCaptured.

Documentation de la méthode

int capture()

Lancer la capture d'image. Les signaux ` imageCaptured ` et ` imageSaved ` seront émis une fois la capture terminée.

L'image capturée sera disponible via la propriété preview, qui peut être utilisée comme source pour un élément Image QML. La méthode saveToFile() peut ensuite être utilisée pour enregistrer l'image.

L'appareil photo enregistre tous les paramètres de capture, tels que les réglages d'exposition ou les paramètres de traitement d'image ; ainsi, les modifications apportées aux paramètres de l'appareil photo après l'appel de `capture()` n'affectent pas les demandes de capture précédentes.

La méthode `capture()` renvoie le paramètre `requestId` de la capture, utilisé avec les signaux `imageExposed()`, ` imageCaptured()`, ` imageMetadataAvailable()` et ` imageSaved()`.

Voir également readyForCapture et preview.

int captureToFile(location)

Fonctionne de la même manière que capture(), mais enregistre en outre automatiquement l'image capturée à l'adresse spécifiée location. Renvoie le paramètre requestId de la capture.

Voir également capture().

void saveToFile(location)

Enregistre la dernière image capturée dans le fichier « location ».

Voir également capture et preview.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.