Power Apps 中的相機控制項
此控制項可讓使用者在裝置上使用相機拍照。
描述
使用相機控制項透過裝置相機擷取圖片。 裝置必須有一部相機,且使用者必須授權應用程式使用相機。
選取相機控制項,以從相機擷取圖片。
最近擷取的圖片可以透過 Photo 屬性使用。 使用此屬性,圖像可以是:
- 使用圖像控制項檢視。 使用 圖像控制項檢視擷取的圖像。 如需詳細資訊,請參閱 範例。
- 暫時放入變數或集合物件。 使用 Set 或 Collect 函數在變數或集合中儲存圖像。 當您在集合物件中使用多個圖像時,請在使用裝置的有限記憶體時務必小心。 使用 SaveData 和 LoadData 函數將圖像移到裝置上的本機儲存區,且其適用 離線案例。
- 儲存在資料庫。 使用 Patch 功能在資料庫中儲存圖像。
- 以 base64 編碼文字字串傳輸。 使用 JSON 函數到 base64 編碼圖像。
您使用 Stream、StreamRate 及 OnStream 屬性在計時器上自動擷取圖像,例如每分鐘快照建立時間間隔序列。
擷取的媒體是由文字字串 URI 參考。 如需詳細資訊,請閱讀 資料類型文件。
注意
- 僅在 Microsoft Edge、Chrome、Firefox 及 Opera 瀏覽器;和 Android 及 iOS 裝置上才支援相機控制項。 所有其他瀏覽器和平台都會顯示一則警告,指出應用程式的某些功能無法運作。
- 相機控制項產生的圖像最大解析度為 640 x 480 像素。 如需完整解析度的圖像,請改用新增圖片控制項。
- 根據行動裝置的品牌和型號,在使用相機控制項時,可能需要花費幾秒鐘的時間來初始化裝置相機。
限制
相機控制項具有下列限制:
- 當您使用相機控制項時,圖像不包含中繼資料資訊。 這是由於受限於我們相機拍攝映像的方式。 為了緩解此問題,請使用 新增相片控制項
- 如果行動裝置的記憶體不足,為了避免損毀裝置,相機會暫時遭到停用。
- 如果您開啟使用相機控制項的應用程式,Windows 版 Power Apps 可能會當機。 為避免此問題,請在 Windows 平台上使用 Web 播放程式。 此外,不支援多個相機。
索引鍵屬性
AvailableDevices – 裝置上可用相機的表格。
表格包含兩欄:
- 預計搭配 Camera 屬性使用的 Id
- 裝置提供用來識別相機的 Name。 某些平台可能包括 前面 或 背面,可協助找出相機。
注意:無法在應用程式中使用表格中的所有裝置。 部分可能是專為特定目的而設計的專用驅動程式或應用程式。
Camera – 預計使用的相機數字 ID。 在具有多台相機的裝置上的説明。
OnStream – 更新Stream屬性時要執行的動作。
Photo – 使用者照相時擷取的圖像。
Stream – 根據 StreamRate 屬性自動更新的圖像。
StreamRate – 在 Stream 屬性上更新圖像的頻率 (以毫秒為單位)。 此值範圍可介於 100 (1/10 秒) 到 3,600,000 (1 小時)。
其他屬性
AccessibleLabel – 螢幕報讀軟體的標籤。 應描述拍攝照片的目的。
BorderColor – 控制項框線的色彩。
BorderStyle – 決定控制項的框線為實線、虛線、點線或無。
BorderThickness – 控制項框線的粗細。
Brightness – 使用者極可能在圖像感受的亮度。
Contrast – 使用者可區分圖像中類似色彩的簡易度。
DisplayMode – 控制項是否允許使用者輸入 (Edit)、只顯示資料 (View) 或者已停用 (Disabled)。
FocusedBorderColor – 當控制項為焦點時的控制項框線色彩。
FocusedBorderThickness – 當控制項為焦點時的控制項框線粗細。
Height – 控制項的頂端和底部邊緣之間的距離。
OnSelect – 在使用者點選或按一下控制項時,要執行的動作。
TabIndex – 相較於其他控制項的鍵盤導覽順序。
Tooltip – 使用者將滑鼠停留在控制項上時所顯示的說明文字。
Visible – 控制項顯示或隱藏。
Width – 控制項左邊緣與右邊緣之間的距離。
X – 控制項左邊緣與其父容器或畫面左邊緣之間的距離。
Y – 控制項上邊緣與父容器或畫面上邊緣之間的距離。
範例
對這些範例,您將需要一部帶有相機的裝置。 若要測試您的應用程式,請使用瀏覽器可存取的網路相機。 或者您可以儲存應用程式,並使用相機將其載入 iOS 或 Android 裝置。
簡單顯示已擷取的圖片
新增相機控制項。
當出現提示時,授權應用程式使用裝置相機。
新增圖像控制項。
將 圖像 控制項的 Image 屬性設定為下列公式:
Camera1.Photo
注意
視需要將相機控制項名稱取代為 Camera1。
按 F5 預覽您的應用程式。
透過選取或點選相機控制項拍照。 您應該在您的圖像控制項中看到結果。
將照片新增到圖像資源庫控制項
新增相機控制項,並將其命名為 MyCamera,然後將其 OnSelect 屬性設定為以下公式:
Collect( MyPix, MyCamera.Photo )
如需詳細資訊,請參閱:
- 如何新增、命名和設定控制項?
- 瞭解更多有關 Collect 功能或 other functions。
按 F5 鍵,然後選取或點選 MyCamera 拍照。
將圖像資源庫控制項的 Items 屬性設定為此公式︰
MyPix
將資源庫中的圖像控制項的 Image 屬性設定為以下公式:
ThisItem.Url
您拍攝的照片會出現在圖像資源庫控制項中。
拍攝您想要的照片張數,然後按下 Esc 鍵返回預設工作區。
(非必要) 將圖像資源庫控制項中的圖像控制項的 OnSelect 屬性設定為以下公式:
Remove( MyPix, ThisItem )
按下 F5,然後選取照片移除。
使用 SaveData 函數在本機儲存圖像或 Patch 函數更新資料來源。
從下拉式選單變更有效相機
新增相機控制項。
當出現提示時,授權應用程式使用裝置相機。
設定下拉式選單的 Items 屬性為:
Camera1.AvailableDevices
注意
視需要將相機控制項的名稱取代為 Camera1。
將相機的 Camera 屬性設定為:
Dropdown1.Selected.Id
注意
依適當情況將下拉式選單控制項的名稱取代為 Dropdown1。
按 F5 鍵,然後從下拉式選單選取項目變更相機。
協助工具指南
相機控制項顯示相機頭,並以按鈕為功能進行拍照。 因此,協助工具的考量與按鈕類似。
影片替代項目
請考慮為視障使用者新增替代形式的輸入。 例如,新增圖片讓使用者從他們的裝置上傳圖像。
色彩對比
FocusedBorderColor 與外部色彩之間必須有足夠的色彩對比度。
螢幕助讀程式支援
AccessibleLabel 必須存在。
鍵盤支援
TabIndex 必須是零或大於零,鍵盤使用者才能導覽到該處。
焦點指標必須清楚可見。 使用 FocusedBorderColor 和 FocusedBorderThickness 更新焦點指示器的能見度。