android-signaturepad
android-signaturepad copied to clipboard
Android Signature Pad is an Android library for drawing smooth signatures
Android Signature Pad
Android Signature Pad is an Android library for drawing smooth signatures. It uses variable width Bézier curve interpolation based on Smoother Signatures post by Square.

Features
- Bézier implementation for a smoother line
- Variable point size based on velocity
- Customizable pen color and size
- Bitmap, SVG and Raw-data support
Installation
Latest version of the library can be found on Maven Central.
For Gradle users
Open your build.gradle and make sure that Maven Central repository is declared into repositories
section:
repositories {
mavenCentral()
}
Then, include the library as dependency:
implementation 'se.warting.signature:signature-pad:<latest_version>' // jetpack Compose views
or
implementation 'se.warting.signature:signature-view:<latest_version>' // legacy android views
Usage
Please see the /app example app for a more detailed code example of how to use the
library.
- Add the
SignaturePadview to the layout you want to show.
var signaturePadAdapter: SignaturePadAdapter? = null
SignaturePadView(onReady = {
signaturePadAdapter = it
})
Button(onClick = {
Log.d("", signaturePadAdapter?.getSignatureSvg() ?: "null")
}) {
Text("Save")
}
- Configure attributes.
penMinWidth- The minimum width of the stroke (default: 3dp).penMaxWidth- The maximum width of the stroke (default: 7dp).penColor- The color of the stroke (default: Color.BLACK).velocityFilterWeight- Weight used to modify new velocity based on the previous velocity ( default: 0.9).clearOnDoubleClick- Double click to clear pad (default: false)
- Get signature data
getSignatureBitmap()- A signature bitmap with a white background.getTransparentSignatureBitmap()- A signature bitmap with a transparent background.getSignatureSvg()- A signature Scalable Vector Graphics document.
