Las firmas electrónicas son tan simples como un nombre ingresado en documentos electrónicos. Estos se utilizan cada vez más en el comercio electrónico y en las presentaciones reglamentarias. Las firmas electrónicas representan los datos en la forma codificada visualmente utilizada por el firmante para firmar los documentos electrónicamente. Como desarrollador de Python, puede editar firmas electrónicamente en sus documentos PDF firmados mediante programación en la nube. Este artículo se centrará en cómo editar firmas en documentos PDF firmados utilizando una API REST en Python.
En este artículo se tratarán los siguientes temas:
- API REST de firma de documento y SDK de Python
- Editar firmas en documentos PDF firmados mediante una API REST
- Buscar y reemplazar firmas electrónicas usando Python
API REST de firma de documento y SDK de Python
Para editar firmas electrónicas en un documento PDF, usaré la API Python SDK de GroupDocs.Signature Cloud. Le permite proteger electrónicamente documentos e imágenes para formatos de archivo admitidos mediante la aplicación de texto, sello, código QR, código de barras, imagen y firmas digitales. También puede crear, verificar, eliminar y buscar fácilmente diferentes tipos de firmas. También proporciona SDK de .NET, Java, PHP, Android, Ruby y Node.js como sus miembros de la familia de firmas de documentos para la API de la nube.
Puede instalar GroupDocs.Signature Cloud en su proyecto de Python con pip (instalador de paquetes para python) usando el siguiente comando en la consola:
pip install groupdocs_signature_cloud
Obtenga su ID de cliente y Secreto de cliente del panel de control antes de comenzar a seguir los pasos y los ejemplos de código disponibles. Agregue su ID y secreto en el código como se muestra a continuación:
client_id = "112f0f38-9dae-42d5-b4fc-cc84ae644972"
client_secret = "16ad3fe0bdc39c910f57d2fd48a5d618"
configuration = groupdocs_signature_cloud.Configuration(client_id, client_secret)
configuration.api_base_url = "https://api.groupdocs.cloud"
my_storage = ""
Edite firmas en documentos PDF firmados usando una API REST en Python
Puede editar firmas en documentos PDF firmados siguiendo los sencillos pasos que se mencionan a continuación:
- Subir los archivos PDF firmados a la nube
- Actualizar firmas en documentos PDF firmados usando Python
- Descargar el archivo resultante
Sube el documento
En primer lugar, cargue el documento PDF firmado en la nube utilizando el ejemplo de código que se muestra a continuación:
# inicialización de la API
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)
# subir archivos de muestra
request = groupdocs_signature_cloud.UploadFileRequest("signed.pdf", "C:\\Files\\signed.pdf", my_storage)
response = file_api.upload_file(request)
Como resultado, el archivo PDF cargado (firmado.pdf) estará disponible en la sección de archivos de su tablero en la nube.
Actualizar firmas en documentos PDF firmados usando Python
Puede actualizar las firmas en un archivo PDF firmado mediante programación siguiendo los pasos que se mencionan a continuación.
- Crear una instancia de SignApi
- Establecer la ruta al archivo PDF firmado
- Busque el código QR proporcionando SearchQRCodeOptions y SearchSettings
- Crear solicitud de firma de búsqueda
- Obtenga resultados llamando al método SignApi.search\signatures()
- Definir opciones de actualización
- Establecer configuración de actualización
- Asigne UpdateOptions a UpdateSettings
- Crear solicitud de firmas de actualización
- Obtenga resultados llamando al método SignApi.update\signatures()
El siguiente fragmento de código muestra cómo actualizar las firmas de código QR en un documento PDF firmado mediante una API REST.
# inicialización de la API
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)
# ruta del documento firmado
fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "signed.pdf"
# buscar codigo qr
opts = groupdocs_signature_cloud.SearchQRCodeOptions()
opts.page = 1
opts.signature_type = 'QRCode'
settings = groupdocs_signature_cloud.SearchSettings()
settings.options = [opts]
settings.file_info = fileInfo
request = groupdocs_signature_cloud.SearchSignaturesRequest(settings)
response = api.search_signatures(request)
# actualizar codigo qr
opts = groupdocs_signature_cloud.UpdateOptions()
opts.page = 1
opts.signature_type = 'QRCode'
opts.signature_id = response.signatures[0].signature_id
opts.left = 450
opts.top = 600
opts.width = 90
opts.height = 90
opts.is_signature = True
settings = groupdocs_signature_cloud.UpdateSettings()
settings.options = [opts]
settings.file_info = fileInfo
request = groupdocs_signature_cloud.UpdateSignaturesRequest(settings)
response = api.update_signatures(request)
Descargar el archivo firmado
El ejemplo de código anterior guardará el archivo PDF actualizado en la nube, que se puede descargar con el siguiente ejemplo de código:
# inicialización de la API
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)
request = groupdocs_signature_cloud.DownloadFileRequest("signed.pdf", my_storage)
response = file_api.download_file(request)
# Mueva el archivo descargado a su directorio de trabajo
shutil.move(response, "C:\\Files\\")
Buscar y reemplazar firmas electrónicas usando Python
Puede buscar y reemplazar las firmas en un documento PDF firmado mediante programación siguiendo los pasos que se indican a continuación.
- Crear una instancia de SignApi
- Establecer la ruta al archivo PDF firmado
- Buscar código QR
- Definir SearchQRCodeOptions y SearchSettings
- Crear solicitud de firma de búsqueda
- Obtenga resultados llamando al método SignApi.search\signatures()
- Eliminar el código QR buscado
- Definir DeleteOptions y DeleteSettings
- Crear EliminarSolicitud de Firma
- Obtenga resultados llamando al método SignApi.delete\signatures()
- Firmar con código de barras
- Definir SignBarcodeOptions
- Establecer el tamaño y la posición del código de barras
- Definir SignSettings
- Asigne SignBarcodeOptions y SaveOptions a SignSettings
- Crear CreateSignaturesRequest
- Obtenga resultados llamando al método SignApi.create\signatures()
El siguiente fragmento de código muestra cómo buscar una firma de código QR y reemplazarla con una firma de código de barras en un documento PDF firmado mediante una API REST. Siga los pasos mencionados anteriormente para descargar el archivo actualizado.
# inicialización de la API
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)
# ruta del documento firmado con código qr
fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "signed.pdf"
# buscar codigo qr
opts = groupdocs_signature_cloud.SearchQRCodeOptions()
opts.page = 1
opts.signature_type = 'QRCode'
settings = groupdocs_signature_cloud.SearchSettings()
settings.options = [opts]
settings.file_info = fileInfo
request = groupdocs_signature_cloud.SearchSignaturesRequest(settings)
response = api.search_signatures(request)
# borrar codigo qr
opts = groupdocs_signature_cloud.DeleteOptions()
opts.page = 1
opts.signature_type = 'QRCode'
opts.signature_id = response.signatures[0].signature_id
settings = groupdocs_signature_cloud.DeleteSettings()
settings.options = [opts]
settings.file_info = fileInfo
request = groupdocs_signature_cloud.DeleteSignaturesRequest(settings)
response = api.delete_signatures(request)
# firmar con código de barras
opts = groupdocs_signature_cloud.SignBarcodeOptions()
opts.signature_type = 'Barcode'
opts.text = '123456789012'
opts.barcode_type = 'Code128'
opts.code_text_alignment = 'None'
# establecer la posición de la firma del código de barras en una página
opts.left = 250
opts.top = 0
opts.width = 300
opts.height = 90
opts.location_measure_type = "Pixels"
opts.size_measure_type = "Pixels"
opts.stretch = "None"
opts.rotation_angle = 0
opts.horizontal_alignment = "None"
opts.vertical_alignment = "None"
opts.margin = groupdocs_signature_cloud.Padding()
opts.margin.all = 5
opts.margin_measure_type = "Pixels"
opts.inner_margins = groupdocs_signature_cloud.Padding()
opts.inner_margins.all = 2
opts.page = 1
settings = groupdocs_signature_cloud.SignSettings()
settings.options = [opts]
settings.save_options = groupdocs_signature_cloud.SaveOptions()
settings.save_options.output_file_path = "Output\\signedBarCode_sample.pdf"
settings.file_info = fileInfo
request = groupdocs_signature_cloud.CreateSignaturesRequest(settings)
response = api.create_signatures(request)
Prueba en línea
Pruebe la siguiente herramienta gratuita de firma de PDF en línea, que se desarrolla utilizando la API anterior. https://products.groupdocs.app/signature/pdf
Conclusión
En este artículo, ha aprendido a actualizar firmas en documentos PDF firmados. También aprendió a buscar y reemplazar firmas en documentos PDF firmados en la nube. Este artículo también explicó cómo cargar mediante programación un archivo PDF en la nube y luego descargar el archivo firmado de la nube. Puede obtener más información sobre GroupDocs.Signature Cloud API utilizando la documentación. También proporcionamos una sección Referencia de API que le permite visualizar e interactuar con nuestras API directamente a través del navegador. En caso de cualquier ambigüedad, no dude en contactarnos en el foro.