AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Ayuda / WLanguage / Funciones WLanguage / Controles, páginas y ventanas / Funciones de video
  • Guardar una foto
  • Condiciones de uso:
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Captura las imágenes recibidas de la cámara:
  • como imagen: toma una foto.
  • como video: graba un video.
Dependiendo de la plataforma, se utilizan los siguientes formatos de foto y video:
  • WINDEVWindows imágenes BMP o videos AVI.
    Si la extensión del archivo es .jpg o .jpeg, la imagen se guarda en formato JPEG
Ejemplo
WINDEVCódigo de Usuario (UMC)
// Records the video captured in the "CAM_Kitchen" control
// as a 1-minute AVI file ("C:\Temp\MyVideo.AVI")
ResSave = VideoCapture(CAM_Kitchen, "C:\Temp\MyVideo.AVI", viVideoCapture, 60)
IF ResSave = True THEN
Info("Video successfully saved")
ELSE
Error(ErrorInfo())
END
Sintaxis
<Result> = VideoCapture(<Camera control> , <File to create> [, <Type of capture> [, <Capture duration> [, <Number of images per second> [, <Display during capture>]]]])
<Result>: Booleano
  • True si el video se grabó correctamente,
  • False en caso contrario. Para obtener más información sobre el error, utilice la función ErrorInfo.
<Camera control>: Nombre del control
Nombre del control Cámara a utilizar. No es necesario que se muestre el video en un control Cámara para guardarlo.
<File to create>: Cadena de caracteres
Nombre y ruta completa (o relativa) del archivo a crear.
WINDEVWindows Cuando se toma una foto, se crea un archivo BMP. Cuando se graba un video, se crea un archivo AVI
Atención: No se pueden utilizar rutas UNC.
<Type of capture>: Constante opcional de tipo Integer
Tipo de captura:
viPictureCapture
WINDEVWindows Captura una imagen y la guarda como un archivo BMP.

viVideoCapture
(Valor predeterminado)
WINDEVWindows Captura un video y lo guarda como un archivo AVI.

<Capture duration>: Entero opcional
Duración de la grabación de video (en segundos). Si este parámetro se establece en 0 o no se especifica, la grabación de video se detendrá:
  • al llamar a la función VideoStop.
  • cuando no haya más espacio en el disco.
Este parámetro puede ser:
  • un número entero que corresponde al número de segundos,
  • una variable de tipo Duration,
  • la duración en un formato legible (por ejemplo, 1 s o 10 ms).
<Number of images per second>: Entero opcional
Número de imágenes guardadas por segundo (15 de forma predeterminada). Este parámetro solo se tiene en cuenta si <Type of capture> es igual a viVideoCapture.
<Display during capture>: Booleano opcional
  • True (predeterminado) si la secuencia de vista previa debe mostrarse en el control Cámara especificado,
  • False en caso contrario.
Observaciones

Guardar una foto

Solo se guardará en formato BMP la imagen que se muestra al ejecutar la función VideoCapture. Para guardar esta imagen, también se puede utilizar:
  • la función dSaveImageBMP: la foto se guardará como un archivo BMP.
  • la función dSaveImageGIF: la foto se guardará como un archivo GIF.
  • la función dSaveImageJPEG: la foto se guardará como un archivo JPEG.

Condiciones de uso:

  • WINDEVWindows Para utilizar esta función, se debe conectar una cámara Web al equipo actual.
Observación: Esta función es equivalente a la función CameraCapture.
Componente: wd290obj.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
SALVAR FOTO NO BANCO REDIMENSIONANDO O TAMANHO E AJUSTANDO A QAULIDADE
PROCEDURE PhotoEnregistre()

path_imagem is string = fCurrentDir()+fSep()+"IMAGEM.JPG" // ONDE VAI SALVAR A IMAGEM

//VideoParameter(vipPhotoResolution,"1080 1080")

VideoCapture(CAM_Appareil,path_imagem,viPictureCapture) // TIROU A FOTO

IMAGEM is Image // IMAGEM DE TRABALHO PARA REDIMENSIONAR O BUFFER EM OUTRO TAMANHO

IMAGEM = fLoadBuffer(path_imagem)

IF fFileExist(path_imagem) = True THEN //DEU CERTO
Info("A Imagem "+path_imagem+" Existe no disco")
dResize(IMAGEM,320,480,drStretched) //RESIZE DA IMAGEM
dSaveImageJPEG(IMAGEM,path_imagem,80) //80%
ELSE
Info("A Imagem "+path_imagem+" nao existe no disco") //DEU ERRADO
RETURN
END

T001_FOTOS.T001_DATA_HORA = DateSys() + TimeSys()

T001_FOTOS.T001_FOTO = fLoadBuffer(path_imagem) //BUFFER MODIFICADO E SALVO NO BINARIO

IF HAdd(T001_FOTOS)=True THEN
ShellExecute(path_imagem) //GRAVOU NO BANCO E ABRIU A IMAGEM
END
Boller
23 03 2023

Última modificación: 29/09/2022

Señalar un error o enviar una sugerencia | Ayuda local