mirror of
https://gitee.com/shuto/customCamera.git
synced 2026-05-02 00:07:24 +08:00
178 lines
5.7 KiB
Markdown
178 lines
5.7 KiB
Markdown
# org.geneanet.customcamera
|
|
|
|
This cordova plugin is an alternative to the official cordova plugin (camera). It starts a custom camera: image overlay with an opacity slider, user-defined color of the buttons, activating/deactivating functions.
|
|
|
|
|
|
This plugin defines a global variable `navigator.GeneanetCustomCamera`.
|
|
|
|
## Installation
|
|
|
|
cordova plugin add https://github.com/geneanet/customCamera.git
|
|
cordova build `platform`
|
|
|
|
## Supported Platforms
|
|
|
|
+ Android
|
|
|
|
## Utilisation
|
|
|
|
### Command
|
|
|
|
``` js
|
|
navigator.GeneanetCustomCamera.startCamera(options, onSuccess, onFail);
|
|
```
|
|
|
|
### Parameters
|
|
|
|
#### *{Object}* options
|
|
|
|
An `options` object containing the parameters of the camera.
|
|
|
|
+ **imgBackgroundBase64 :** Overlay image. Should be in base64 format.
|
|
- **Type :** `string`
|
|
- **Default :** `null`
|
|
|
|
+ **imgBackgroundBase64OtherOrientation :** Alternate overlay image (if device's orientation has changed since app started). Should be in base64 format. If `null`, use `imgBackgroundBase64` and resize image.
|
|
- **Type :** `string`
|
|
- **Default :** `null`
|
|
|
|
+ **miniature :** Activate/deactivate the thumbnail option. `true` : Activate option. `false` : Deactivate option.
|
|
- **Type :** `boolean`
|
|
- **Default :** `true`
|
|
|
|
+ **saveInGallery :** Save picture to the camera gallery. `true` : Activate option. `false` : Deactivate option.
|
|
- **Type :** `boolean`
|
|
- **Default :** `false`
|
|
|
|
+ **cameraBackgroundColor :** Color of the camera button.
|
|
- **Type :** `string`
|
|
- **Default :** `"#e26760"`
|
|
- **Notes :**
|
|
+ An incorrect value or a `null` value means a transparency effect.
|
|
+ See the [`parseColor()`](http://developer.android.com/reference/android/graphics/Color.html#parseColor(java.lang.String)) method for the format of colors.
|
|
|
|
+ **cameraBackgroundColorPressed :** Color of the camera button when it is pressed.
|
|
- **Type :** `string`
|
|
- **Default :** `"#dc453d"`
|
|
- **Notes :**
|
|
+ An incorrect value or a `null` value means a transparency effect.
|
|
+ See the [`parseColor()`](http://developer.android.com/reference/android/graphics/Color.html#parseColor(java.lang.String)) method for the format of colors.
|
|
|
|
+ **quality :** Quality of the picture.
|
|
- **Type :** `integer`
|
|
- **Default :** `100`
|
|
- **Notes :**
|
|
+ A value between 0 and 100. An incorrect value means the default value.
|
|
+ See the [`compress()`](http://developer.android.com/reference/android/graphics/Bitmap.html) method for more informations.
|
|
|
|
+ **opacity :** Activate/deactivate the opacity option for the overlay image. `true` : Activate option. `false` : Deactivate option.
|
|
- **Type :** `boolean`
|
|
- **Default :** `true`
|
|
|
|
+ **defaultFlash :** Default mode flash to use. See `CustomCamera.FlashModes` for corrects values.
|
|
- **Type :** `integer`
|
|
- **Default :** `0`
|
|
|
|
+ **switchFlash :** Activate/deactivate the flash mode button. `true` : Activate button. `false` : Deactivate button.
|
|
- **Type :** `boolean`
|
|
- **Default :** `true`
|
|
|
|
+ **defaultCamera :** Default camera used. See `CustomCamera.CameraFacings` for corrects values.
|
|
- **Type :** `integer`
|
|
- **Default :** `0`
|
|
|
|
+ **switchCamera :** Activate/deactivate the button to switch camera. `true` : Activate option. `false` : Deactivate option.
|
|
- **Type :** `boolean`
|
|
- **Default :** `true`
|
|
|
|
#### *{Function}* onSuccess
|
|
|
|
`onSuccess` is called when the shooting has succeed.
|
|
|
|
+ **Parameters :**
|
|
- **result :**
|
|
+ **Type :** `string`
|
|
+ **Note :** Contains the picture in base64 format.
|
|
|
|
#### *{Function}* onFail
|
|
|
|
`onFail`is called when the shooting has failed.
|
|
+ **Parameters :**
|
|
- **code :**
|
|
+ **Type :** `integer`
|
|
+ **Note :** Contains the error code.
|
|
- **Code "2" :** Error while taking a picture.
|
|
- **Code "3" :** Camera closed before takin a picture.
|
|
- **message :**
|
|
+ **Type :** `string`
|
|
+ **Note :** A error message.
|
|
|
|
## Constants
|
|
|
|
+ **CustomCamera.FlashModes.DISABLE :**
|
|
- **Type :** `integer`
|
|
- **Value :** `0`
|
|
+ **CustomCamera.FlashModes.ACTIVE :**
|
|
- **Type :** `integer`
|
|
- **Value :** `1`
|
|
+ **CustomCamera.FlashModes.AUTO :**
|
|
- **Type :** `integer`
|
|
- **Value :** `2`
|
|
|
|
+ **CustomCamera.CameraFacings.BACK :**
|
|
- **Type :** `integer`
|
|
- **Value :** `0`
|
|
+ **CustomCamera.CameraFacings.FRONT :**
|
|
- **Type :** `integer`
|
|
- **Value :** `1`
|
|
|
|
|
|
## Implementation
|
|
|
|
### Example
|
|
|
|
``` js
|
|
var base64 = "...";
|
|
navigator.GeneanetCustomCamera.startCamera(
|
|
{
|
|
imgBackgroundBase64: base64,
|
|
saveInGallery: true,
|
|
miniature: false,
|
|
quality: 70,
|
|
cameraBackgroundColor: "#ffffff",
|
|
cameraBackgroundColorPressed: null
|
|
},
|
|
function(result) {
|
|
window.console.log("success");
|
|
$("#imgTaken").attr("src", "data:image/jpeg;base64,"+result);
|
|
},
|
|
function(code, message) {
|
|
window.console.log("fail");
|
|
window.console.log(code);
|
|
window.console.log(message);
|
|
}
|
|
);
|
|
```
|
|
|
|
### Barcode
|
|
|
|
[See the code](https://github.com/geneanet/customCamera/tree/master/examples/barcode)
|
|
|
|

|
|
|
|
### Grid
|
|
|
|
[See the code](https://github.com/geneanet/customCamera/tree/master/examples/grid)
|
|
|
|

|
|
|
|
### AngularJS
|
|
|
|
An implementation in AngularJS has been made for ease of use : [$geneanetCustomCamera](https://github.com/geneanet/customCameraAngular.git).
|
|
|
|
## Contribute
|
|
|
|
To contribute to this project, please read the following :
|
|
+ **Bugs, suggestion, etc. :** Must be declared in Github. Please search the threads before starting a new topic.
|
|
+ **Développement Javascript :** Must compiles with JSHint coding rules.
|