Angular Signature Pad

Angular component for szimek/signature_pad.
Install
npm install @almothafar/angular-signature-pad --save
Reference Implementation
Usage example
API is identical to szimek/signature_pad.
Options are as per szimek/signature_pad with the following additions:
- canvasWidth: width of the canvas (px)
- canvasHeight: height of the canvas (px)
The above options are provided to avoid accessing the DOM directly from your component to adjust the canvas size.
import { AngularSignaturePadModule } from '@almothafar/angular-signature-pad';
...
@NgModule({
declarations: [ ],
imports: [ AngularSignaturePadModule ],
providers: [ ],
bootstrap: [ AppComponent ]
})
import { Component, ViewChild } from '@angular/core';
import { SignaturePadComponent } from '@almothafar/angular-signature-pad';
@Component({
template: '<signature-pad #signature [options]="signaturePadOptions" (drawStart)="drawStart($event)" (drawEnd)="drawComplete($event)"></signature-pad>'
})
export class SignaturePadPage {
@ViewChild('signature')
public signaturePad: SignaturePadComponent;
private signaturePadOptions: NgSignaturePadOptions = {
minWidth: 5,
canvasWidth: 500,
canvasHeight: 300
};
constructor() {
}
ngAfterViewInit() {
this.signaturePad.set('minWidth', 5);
this.signaturePad.clear();
}
drawComplete(event: MouseEvent | Touch) {
console.log('Completed drawing', event);
console.log(this.signaturePad.toDataURL());
}
drawStart(event: MouseEvent | Touch) {
console.log('Start drawing', event);
}
}