Partilhar via


Controlo da câmara nas Power Apps

Um controle que permite aos usuários tirar fotos usando a câmera em um dispositivo.

Description

Use o controle de câmera para capturar fotos com a câmera de um dispositivo. O dispositivo deve ter uma câmera e o usuário deve autorizar o aplicativo a usar a câmera.

Selecione o controle da câmera para capturar uma imagem da câmera.

A imagem capturada mais recentemente está disponível através da propriedade Photo . Com esta propriedade, as imagens podem ser:

  • Visualizado com o controle Image. Use o controle Image para exibir a imagem capturada. Para mais informações, consulte os exemplos.
  • Coloque temporariamente uma variável ou uma coleção. Use as funções Definir ou Coletar para armazenar imagens em uma variável ou coleção. Tenha cuidado ao usar várias imagens em uma coleção ao mesmo tempo consumindo a memória limitada do dispositivo. Use as funções SaveData e LoadData para mover imagens para o armazenamento local no dispositivo e para cenários offline.
  • Armazenado em um banco de dados. Use a função Patch para armazenar imagens em um banco de dados.
  • Transmitido como uma cadeia de texto codificada em base64. Use a função JSON para codificar imagens base64.

Use as propriedades Stream, StreamRate e OnStream para capturar imagens automaticamente em um temporizador, por exemplo, tirar uma imagem a cada minuto para criar uma sequência de lapso de tempo.

A mídia capturada é referenciada por um URI de cadeia de texto. Para obter mais informações, leia a documentação do tipo de dados.

Observação

  • O controle da câmera só é suportado nos navegadores Microsoft Edge, Chrome, Firefox e Opera; e dispositivos Android e iOS. Todos os outros navegadores e plataformas mostrarão um aviso de que alguns recursos do aplicativo não funcionarão.
  • As imagens geradas pelo controle da câmera têm uma resolução máxima de 640 x 480 px. Se você precisar de imagens de resolução total, use o controle Adicionar imagem .
  • Dependendo da marca e do modelo do seu dispositivo móvel, a câmera do dispositivo pode levar alguns segundos para inicializar ao usar o controle da câmera.

Limitações

O controle da câmera tem estas limitações:

  1. Quando você usa o controle da câmera, a imagem não contém informações de metadados. Isto é devido a uma limitação de como tiramos imagens com a câmera. Para atenuar esse problema, use o controle Adicionar imagem
  2. Se o seu dispositivo móvel estiver com pouca memória, a câmara é temporariamente desativada para evitar travar o dispositivo.
  3. As Aplicações Power para Windows poderão falhar se abrir uma aplicação que utilize um controlo de câmara. Para evitar esse problema, use o web player na plataforma Windows. Além disso, várias câmeras não são suportadas.

Propriedades chave

AvailableDevices – Tabela das câmeras disponíveis no dispositivo.

A tabela contém duas colunas:

  • Número de identificação a ser usado com a propriedade Camera
  • Nome fornecido pelo dispositivo para identificar a câmera. Algumas plataformas podem incluir Frontal ou Traseira para ajudar a localizar a câmara.

Observação: nem todos os dispositivos na tabela podem ser utilizáveis em seu aplicativo. Alguns podem ser drivers especializados ou aplicativos destinados a fins específicos.

Câmera – A identificação numérica da câmera a ser usada. Útil em dispositivos com mais de uma câmara.

OnStream – Ações a serem executadas quando a propriedade Stream é atualizada.

Foto – A imagem capturada quando o usuário tira uma foto.

Stream – Imagem atualizada automaticamente com base na propriedade StreamRate .

StreamRate – Com que frequência atualizar a imagem na propriedade Stream , em milissegundos. Este valor pode variar de 100 (1/10 de segundo) a 3.600.000 (1 hora).

Propriedades adicionais

AccessibleLabel – a etiqueta para os leitores de ecrãs. Deve descrever o propósito de tirar uma foto.

BorderColor – A cor da borda de um controle.

BorderStyle – Se a borda de um controle é Sólida, Tracejada, Pontilhada ou Nenhuma.

BorderThickness – A espessura da borda de um controle.

Brilho – Quanta luz o usuário provavelmente perceberá em uma imagem.

Contraste – Quão facilmente o usuário pode distinguir entre cores semelhantes em uma imagem.

DisplayMode – Se o controle permite a entrada do usuário (Editar), exibe apenas dados (View) ou está desativado (Disabled).

FocusedBorderColor – A cor da borda de um controle quando o controle está focado.

FocusedBorderThickness – A espessura da borda de um controle quando o controle está focado.

Altura – A distância entre as bordas superior e inferior de um controle.

OnSelect – Ações a serem executadas quando o usuário toca ou clica em um controle.

TabIndex – Ordem de navegação do teclado em comparação com outros controles.

Dica de ferramenta – Texto explicativo que aparece quando o usuário passa o mouse sobre um controle.

Visível – Se um controle aparece ou está oculto.

Largura – A distância entre as bordas esquerda e direita de um controle.

X – A distância entre a borda esquerda de um controle e a borda esquerda de seu contêiner ou tela pai.

Y – A distância entre a borda superior de um controle e a borda superior do contêiner ou tela pai.

Examples

Para esses exemplos, você precisará de um dispositivo com uma câmera. Para testar seu aplicativo, use uma web cam acessível a partir do navegador. Ou salvando seu aplicativo e carregando-o em um dispositivo iOS ou Android com uma câmera.

Exibição simples de uma imagem capturada

  1. Adicione um controle de câmera .

  2. Autorize o aplicativo a usar a câmera do dispositivo, se solicitado.

  3. Adicionar um controlo de Image.

  4. Defina a propriedade Image do controle Image para a seguinte fórmula:

    Camera1.Photo
    

    Observação

    Substitua o nome de controle da câmera Camera1 conforme apropriado.

  5. Pressione F5 para visualizar seu aplicativo.

  6. Tire uma foto selecionando ou tocando no controle da câmera. Você deve ver o resultado em seu controle de imagem.

  1. Adicione um controle Camera , nomeie-o MyCamera e defina sua propriedade OnSelect para esta fórmula:

    Collect( MyPix, MyCamera.Photo )
    

    Para mais informações:

  2. Prima F5 e, em seguida, tire uma fotografia selecionando ou tocando em MyCamera.

  3. Adicione um controle de galeria vertical . E, em seguida, redimensione seu controle de imagem , seu modelo e o próprio controle da galeria de imagens para caber na tela.

  4. Defina a propriedade Items do controle Galeria de imagens para esta fórmula:

    MyPix
    
  5. Defina a propriedade Image do controle Image na galeria com esta fórmula:

    ThisItem.Url
    

    A imagem que você tirou aparece no controle Galeria de imagens .

  6. Tire quantas fotos quiser e retorne ao espaço de trabalho padrão pressionando Esc.

  7. (facultativo) Defina a propriedade OnSelect do controle Image no controle Image gallery para a fórmula:

    Remove( MyPix, ThisItem )
    
  8. Prima F5 e, em seguida, selecione uma imagem para a remover.

Use a função SaveData para salvar as imagens localmente ou a função Patch para atualizar uma fonte de dados.

Alterar a câmara ativa a partir de uma lista pendente

  1. Adicione um controle de câmera .

  2. Autorize o aplicativo a usar a câmera do dispositivo, se solicitado.

  3. Adicione um controle suspenso .

  4. Defina a propriedade Items da lista suspensa para:

    Camera1.AvailableDevices
    

    Observação

    Substitua o nome de controle da câmera Camera1 conforme apropriado.

  5. Defina a propriedade Camera da câmera para:

    Dropdown1.Selected.Id
    

    Observação

    Substitua o nome do controle suspenso Dropdown1 conforme apropriado.

  6. Prima F5 e, em seguida, selecione um item na lista pendente para alterar a câmara.

Diretrizes de acessibilidade

O controle da câmera mostra a alimentação da câmera e também funciona como um botão que tira uma foto. Portanto, há considerações de acessibilidade semelhantes às dos botões.

Alternativas de vídeo

Considere a possibilidade de adicionar uma forma alternativa de entrada para usuários com deficiência visual. Por exemplo, Adicionar imagem para permitir que os usuários carreguem uma imagem de seus dispositivos.

Contraste de cor

Deve haver contraste de cor adequado entre FocusedBorderColor e a cor externa.

Suporte a leitor de ecrã

AccessibleLabel deve estar presente.

Suporte de teclado

  • TabIndex deve ser zero ou maior para que os usuários do teclado possam navegar até ele.

  • Os indicadores de focalização devem ser claramente visíveis. Use FocusedBorderColor e FocusedBorderThickness para atualizar a visibilidade dos indicadores de foco.

Consulte também

Limitações dos controlos nas Power Apps