Электронные подписи так же просты, как имя, введенное в электронные документы. Они все чаще используются в электронной коммерции и в нормативных документах. Электронные подписи представляют собой данные в визуально закодированной форме, используемые подписывающей стороной для электронной подписи документов. Как разработчик Python, вы можете программно редактировать подписи в подписанных PDF-документах в облаке. В этой статье основное внимание будет уделено тому, как редактировать подписи в подписанных документах PDF с помощью REST API в Python.
В этой статье должны быть раскрыты следующие темы:
- Подпись документа REST API и Python SDK
- Редактировать подписи в подписанных PDF-документах с помощью REST API
- Поиск и замена электронных подписей с помощью Python
Подпись документа REST API и Python SDK
Для редактирования электронных подписей в документе PDF я буду использовать API Python SDK of GroupDocs.Signature Cloud. Это позволяет вам защищать документы и изображения в электронном виде для поддерживаемых форматов файлов, применяя текст, печать, QR-код, штрих-код, изображение и цифровые подписи. Вы также можете легко создавать, проверять, удалять и искать различные типы подписей. Он также предоставляет SDK для .NET, Java, PHP, Android, Ruby и Node.js в качестве членов семейства подписей документов для Cloud API.
Вы можете установить GroupDocs.Signature Cloud в свой проект Python с помощью pip (установщик пакета для python), используя следующую команду в консоли:
pip install groupdocs_signature_cloud
Пожалуйста, получите свой идентификатор клиента и секрет клиента из панели управления, прежде чем приступить к выполнению шагов и доступных примеров кода. Добавьте свой идентификатор и секрет в код, как показано ниже:
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 = ""
Редактировать подписи в подписанных PDF-документах с помощью REST API в Python
Вы можете редактировать подписи в подписанных документах PDF, выполнив простые шаги, указанные ниже:
- Загрузить подписанные PDF-файлы в облако
- Обновите подписи в подписанных PDF-документах с помощью Python
- Скачать результирующий файл
Загрузить документ
Прежде всего, загрузите подписанный PDF-документ в облако, используя приведенный ниже пример кода:
# инициализация API
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)
# загрузить образцы файлов
request = groupdocs_signature_cloud.UploadFileRequest("signed.pdf", "C:\\Files\\signed.pdf", my_storage)
response = file_api.upload_file(request)
В результате загруженный PDF-файл (signed.pdf) будет доступен в разделе файлов вашей панели управления в облаке.
Обновление подписей в подписанных PDF-документах с помощью Python
Вы можете программно обновить подписи в подписанном PDF-файле, выполнив шаги, указанные ниже.
- Создайте экземпляр SignApi
- Установить путь к подписанному файлу PDF
- Найдите QR-код, указав SearchQRCodeOptions и SearchSettings.
- Создать SearchSignatureRequest
- Получите результаты, вызвав метод SignApi.search\signatures().
- Определить параметры обновления
- Установить параметры обновления
- Назначьте UpdateOptions для UpdateSettings
- Создать запрос UpdateSignaturesRequest
- Получите результаты, вызвав метод SignApi.update\signatures().
В следующем фрагменте кода показано, как обновить подписи QR-кода в подписанном документе PDF с помощью REST API.
# инициализация API
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)
# подписанный путь к документу
fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "signed.pdf"
# поиск 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)
# обновить 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)
Загрузите подписанный файл
Приведенный выше пример кода сохранит обновленный PDF-файл в облаке, который можно загрузить с помощью следующего примера кода:
# инициализация 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)
# Переместите загруженный файл в свой рабочий каталог
shutil.move(response, "C:\\Files\\")
Поиск и замена электронных подписей с помощью Python
Вы можете программно искать и заменять подписи в подписанном PDF-документе, выполнив шаги, указанные ниже.
- Создайте экземпляр SignApi
- Установить путь к подписанному файлу PDF
- Поиск QR-кода
- Определите SearchQRCodeOptions и SearchSettings
- Создать SearchSignatureRequest
- Получите результаты, вызвав метод SignApi.search\signatures().
- Удалить искомый QR-код
- Определите DeleteOptions и DeleteSettings
- Создать DeleteSignatureRequest
- Получите результаты, вызвав метод SignApi.delete\signatures().
- Подписать со штрих-кодом
- Определить SignBarcodeOptions
- Установить размер и положение штрих-кода
- Определить настройки знака
- Назначьте SignBarcodeOptions и SaveOptions для SignSettings
- Создать CreateSignaturesRequest
- Получите результаты, вызвав метод SignApi.create\signatures().
В следующем фрагменте кода показано, как выполнить поиск подписи QR-кода и заменить ее подписью штрих-кода в подписанном документе PDF с помощью REST API. Пожалуйста, следуйте инструкциям, упомянутым ранее, чтобы загрузить обновленный файл.
# инициализация API
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)
# qr-код подписал путь к документу
fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "signed.pdf"
# поиск 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)
# удалить 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)
# подписать со штрих-кодом
opts = groupdocs_signature_cloud.SignBarcodeOptions()
opts.signature_type = 'Barcode'
opts.text = '123456789012'
opts.barcode_type = 'Code128'
opts.code_text_alignment = 'None'
# установить положение подписи штрих-кода на странице
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)
Попробуйте онлайн
Попробуйте следующий бесплатный онлайн-инструмент для подписи PDF-файлов, разработанный с использованием вышеуказанного API. https://products.groupdocs.app/signature/pdf
Заключение
В этой статье вы узнали, как обновлять подписи в подписанных PDF-документах. Вы также узнали, как искать и заменять подписи в подписанных документах PDF в облаке. В этой статье также объясняется, как программно загрузить файл PDF в облако, а затем загрузить подписанный файл из облака. Вы можете узнать больше о GroupDocs.Signature Cloud API, используя документацию. Мы также предоставляем раздел Справочник по API, который позволяет визуализировать наши API и взаимодействовать с ними непосредственно через браузер. В случае возникновения каких-либо неясностей, пожалуйста, свяжитесь с нами на форуме.