Development Guide (Document Capture)
This page contains the information of Usage, Configuration, Result of OkayCam for Android, iOS and React-native in Document Capture
Usage
For Android, the Camera can be launched by invoking the start method on OkayCameraActivity with context, license key, config and callback method as follow:
A License Key is required to start the SDK.
Configuration
The configuration object is optional if is calling from Kotlin.
The configuration object can be created and can be customized as the code below:
List of Possible Configurations
This is a complete list of possible configurations that has been provided to the user to make any custom configuration:
-
Property
Description
Default Value
-
crop
crop the frame area
false
-
width
width to resize the image
null
-
torchBtnEnabled
to show torch button. If set to true, it will only be shown if onFlash from captureConfig is set to false.
false
-
imageQuality
quality of the image
1.0f (range from 0 to 1.0)
topLabel
text
text of the top label
" "(empty string)
topLabel
color
color of the top label
#FFFFFF
topLabel
size
text size of the top label
24
bottomLabel
text
text of the bottom label
" "(empty string)
bottomLabel
color
color of the bottom label
#FFFFFF
bottomLabel
size
text size of the bottom label
24
frame
size
size of the camera overlay frame
null
frame
color
color of the camera overlay frame
#FFFFFF
frame
content
content of the camera overlay frame (able to display vector drawable within the frame for guidance)
null (drawable id / file path)
-
showOverlay
transparent black background for camera overlay
true
timer
backgroundColor
background of the count down timer
#662196F3
timer
textColor
text color of the count down timer
#FFFFFF
-
captureBtnColor
color of the capture button
#EB144C
confirmBtnConfig
backgroundColor
background color of the confirm button
#EB144C
confirmBtnConfig
contentColor
content color of the confirm button
#FFFFFF
retakeBtnConfig
backgroundColor
background color of the retake button
#EB144C
retakeBtnConfig
contentColor
content color of the retake button
#FFFFFF
captureConfig
first
config for the first capture
delay: countdown before capture
onFlash: enable/disable flash
onImageQuality: enable/disable image quality check outputPath: desired output image path
SDK Version 2.x.x
delay:0s, onFlash:false, onImageQuality:true outputPath: null
SDK Version 1.x.x
delay:0s, onFlash:false, outputPath: null,
captureConfig
second
config for the second capture
delay: countdown before capture
onFlash: enable/disable flash
onImageQuality: enable/disable image quality check outputPath: desired output image path
SDK Version 2.x.x
delay:0s, onFlash:false, onImageQuality:false outputPath: null
SDK Version 1.x.x
delay:5s, onFlash:false, outputPath: null,
preview
title
ref image on preview screen
""(empty string)
preview
reflmg
ref image on preview screen
null
preview
instruction1
instruction on preview screen
""(empty string)
preview
instruction2
instruction on preview screen
""(empty string)
preview
instruction3
instruction on preview screen
""(empty string)
preview
backgrounColor
background color of preview screen
null
instruction
title
Instruction's title on camera capture screen
""(empty string)
instruction
refImage1
Instruction's reference image 1
null
instruction
refImage2
Instruction's reference image 2
null
showPreviewInstruction
Show or hide preview instruction for captured photos
false
If there is no value is set for properties, default values will be implied.
Result Callback
After the image is capture or cancelled by the user, the callback method will be called.
Result callback has 3 parameters as follow:
Result
Description
Success
It will be true if the image is captured successfully, else it will return false.
Images
If it is successful, images will contain the file path of 2 images in a list of format, else it will return null.
Exception
If it is successful, the exception will be null, else it will contain the exception that occurred during the image capturing.
Base64 Conversion
User Interface Example
The OkayCam contains two different user interface, one will be with flash and another one without flash. The only difference between these two user interfaces is one contains a timer (with flash) and the other one does not contain a timer (without flash) on the screen.
Example 1 (without flash):
Example 2 (with flash):
Example 3 (with frame content):
OkayCam Demo Preview
Last updated