Qt5中去除了Phono,卻而代之的是QtMultimedia,模塊提供了許多與多媒體有關的類。ide
今天主要使用QCamera類來打開設備和顯示圖像,以及截圖。函數
1.QCamera類這個QCamera類提供了接口系統相機設備QCamera可以被用和QVideoWidget一塊兒取景器顯示,和QMediaRecorder一塊兒視頻錄製,和QCameraImageCapture 一塊兒進行圖像採起。ui
三種模式:1只是用來顯示2靜態圖片捕獲3視頻捕獲code
p_camera = new QCamera;//啓用系統默認的攝像頭 p_ciCapture = new QCameraImageCapture(p_camera);//用攝像頭初始化一個QCameraImageCapture用來截圖 p_camera->setCaptureMode(QCamera::CaptureStillImage);//設置攝像頭的模式,能夠抓取靜態圖像 p_camera->setViewfinder(ui->widget);//設置顯示的窗體 p_camera->start();//攝像頭啓動 //能夠截圖則截圖 if (p_ciCapture->isReadyForCapture()) { p_ciCapture->capture(); } //截圖後QCameraImageCapture發出下面這個信號,與一個槽相連顯示圖片 imageCaptured(int,QImage) //顯示截圖的圖片的槽函數 QImage scaledImage = image.scaled(ui->widget->size(), Qt::KeepAspectRatio, Qt::SmoothTransformation); ui->label->setPixmap(QPixmap::fromImage(scaledImage));
不過截取的圖片可能出現斷裂的狀況,多是底層的問題。
orm