Skip to content

Latest commit

 

History

History
178 lines (131 loc) · 5.77 KB

index.md

File metadata and controls

178 lines (131 loc) · 5.77 KB

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

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() 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() 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() 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

onFailis 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.
        • Code "4" : Permissions denied.
    • 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

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

Barcode

Grid

See the code

Grid

AngularJS

An implementation in AngularJS has been made for ease of use : $geneanetCustomCamera.

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.