Q:

¿Cómo puedo capturar la firma? asp.net core mvc c#

Hola tengo una pequena duda sobre como puedo capturar la firma de una persona en ASP.net Core mvc C#.
Ejemplo tengo una Rotativa donde se pide la firma al final, me gustaria saber si es posible implementar una funcion que deje capturar la firma y guardarla para posteriormente ser insertada en el documento pdf.
Gracias

A:

La forma para capturar una firma es por medio de un canvas en html 5, pero vas a necesitar algo mas que asp.net core ya que esta funcionalidad se implementa del lado del cliente y se envia al servidor por medio de ajax
A minimalist example of using Html5 Canvas to save signature as image using Web API
En este caso no define en el html un canvas directamente, sino que se ayuda con la libreria
signature_pad
por eso veras que define
<div class="panel-body" id="signature-pad">
<div>

es el panel donde se firma
Despues envia la imagen de la forma al servidos
public IHttpActionResult Post([FromBody]Signature data)
{
    byte[] photo = Convert.FromBase64String(data.Value);

    //resto codigo
}

La idea es enviar la imagen serializada como base64, por eso hace uso del toDataURL() para obtener esa serializacion
dataURL = signaturePad.toDataURL().replace('data:image/png;base64,', '');
var data = JSON.stringify(
                   {
                       value: dataURL
                   });

$.ajax({
    type: "POST",
    url: "/api/signature",
    contentType: false,
    processData: false,
    data: data,
    contentType: "application/json; charset=utf-8",
    success: function (msg) {
        alert("Done!");
    },
    error: onWebServiceFailed
});

y enviarla por ajax al servidor

