FGX.Camera.TfgCustomCamera

Материал из FGX Native Докуметации
Перейти к навигации Перейти к поиску

Delphi

TfgCustomCamera = class (TComponent)

TComponent -> TfgCustomCamera

Прямые наследники: TfgCamera

Описание

Компонент доступа к камере устройства. Позволяет выбрать камеру наилучшим образом согласно настройкам.

Ограничение: можно использовать только один компонент с Active.True в рамках всего приложения.

Камера автоматически отключается, когда приложение уходит в фон и заново восстанавливает свою работу, когда приложение выходит на передний план.

Конструкторы

constructor
Create(AOwner: TComponent)

Описание отсутствует.

Методы

procedure
AttachClient(const APreview: IFGXCameraClient)

Прикрепляет к текущей камере контрол для вывода превью.

К одной камере можно прикреплять несколько потребителей кадров.
procedure
DetachClient(const APreview: IFGXCameraClient)

Отвязывает прикрепленный для превью контрол.

procedure
DetachClients()

Отвязывает все прикрепленные клиенты.

function
GetTheBestSize(const AFrameType: TfgFrameType; const AWishesSize: TSize): TSize

Возвращает наилучший размер кадра камеры (из списка доступных конфигураций камеры) на основании желаемого размера AWishesSize .

procedure
CapturePhotoAsync(const AFileName: string)

Асинхронно выполняет запрос на получение фотографии с камеры с максимально допустимым размером MaxFrameSize и сохраняет фотографию в файл AFileName . Если фотография успешно снята, то вызывается событие OnCaptureReady , в противном случае - OnCaptureError .

Обязательно убедитесь, что ваше приложение имеет доступ к месторасположению вашего будущего файла фотографии AFileName .
procedure
CapturePhotoAsync(const ABtmap: TfgBitmap)

Асинхронно выполняет запрос на получение фотографии с камеры с максимально допустимым размером MaxFrameSize и сохраняет фотографию в битмап ABtmap . Если фотография успешно снята, то вызывается событие OnCaptureReady , в противном случае - OnCaptureError .

Битмап имеет ограничение на максимально допустимый размер, поэтому перед вызовом метода убедитесь, что ARequiredSize согласован с TfgBitmap.MaxSize .

Свойства

property
NativeCamera: IFGXCamera

Доступ к выбранной камере.

Может вернуть nil , если ни одна камера не подходит под заданные настройки. Возвращает null, если камера не запущена.
property
Active: Boolean

True - камера запускается/запущена. False - камера остановлена.

property
CameraType: TfgCameraType

Необходимый тип камеры.

property
FlashMode: TfgCameraFlashMode

Режим работы вспышки камеры в момент съемки изображения.

property
TorchMode: TfgCameraTorchMode

Режим работы вспышки камеры в режиме работы предпросмотра.

Данное свойство не работает в процессе съемки фотографии.
property
MaxFrameSize: TfgIntegerSize

Необходимый максимально допустимый размер кадров, которые генерирует камера.

Если указано значени 0 для щирины и/или высоты, то это означает, что соответствующий размер не имеет ограничения.

События

event
OnCameraSelect: TOnCameraSelectEvent

Срабатывает, когда камеры уже выбраны согласно указанным настройкам.

Согласно указанным настройкам компонент может выбрать более, чем одну камеру. В этом случае, компонент по умолчанию выбирает первую из списка. При помощи этого события вы можете скорректировать выбор камеры.
event
OnError: TOnCameraErrorEvent

Вызвается, когда в камере возникает ошибка.

event
OnStateChanged: TOnCameraStateChangedEvent

Вызывается, когда камера меняет свое состояние.

event
OnCapturePhotoError: TOnCameraCapturePhotoErrorEvent

Вызывается, если в процессе получения фотографии с камеры возникла ошибка.

event
OnCapturePhotoReady: TOnCameraCapturePhotoReadyEvent

Вызывается, когда фотография получена с камеры.

Константы

const
UndefinedFrameSize: Integer

Описание отсутствует.

const
DefaultActive: Boolean

Описание отсутствует.

const
DefaultCameraType: TfgCameraType

Описание отсутствует.

const
DefaultFlashMode: TfgCameraFlashMode

Описание отсутствует.

const
DefaultTorchMode: TfgCameraTorchMode

Описание отсутствует.