Bạn có thể ký điện tử các tài liệu PDF của mình bằng mã QR theo chương trình trên đám mây. Chữ ký điện tử cung cấp vị thế pháp lý giống như chữ ký viết tay miễn là nó tuân thủ các yêu cầu của quy định cụ thể. Bài viết này sẽ tập trung vào cách ký tài liệu PDF bằng Mã QR bằng API REST trong Python.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

Chữ ký tài liệu API REST và Python SDK

groupdocssignature-cho-đám mây

Để ký điện tử PDF, tôi sẽ sử dụng Python SDK của GroupDocs.Signature Cloud API. Nó cho phép bạn tạo, xác minh và tìm kiếm các loại chữ ký khác nhau trong tài liệu di động hoặc đơn giản, bảng tính, bản trình bày và hình ảnh cho các định dạng tệp được hỗ trợ. Nó cũng cung cấp SDK .NET, Java, PHP, Android, Ruby và Node.js dưới dạng các thành viên họ chữ ký tài liệu cho Cloud API.

Bạn có thể cài đặt GroupDocs.Signature Cloud cho dự án Python của mình bằng pip (trình cài đặt gói cho python) bằng lệnh sau trong bảng điều khiển:

pip install groupdocs_signature_cloud

Vui lòng lấy ID khách hàng và Bí mật khách hàng của bạn từ bảng điều khiển trước khi bạn bắt đầu làm theo các bước và ví dụ về mã có sẵn. Thêm ID và bí mật của bạn vào mã như minh họa bên dưới:

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 = ""

Ký tài liệu PDF bằng API REST trong Python

Bạn có thể ký các tài liệu PDF bằng Mã QR bằng cách thực hiện theo các bước đơn giản được đề cập bên dưới:

Tải lên tài liệu

Trước hết, hãy tải tài liệu PDF lên Đám mây bằng ví dụ mã được cung cấp bên dưới:

# khởi tạo api
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)

# tải lên các tập tin mẫu
request = groupdocs_signature_cloud.UploadFileRequest("sample.pdf", "C:\\Files\\sample.pdf", my_storage)
response = file_api.upload_file(request)

Do đó, tệp PDF đã tải lên (sample.pdf) sẽ có sẵn trong phần tệp trên trang tổng quan của bạn trên đám mây.

Ký tài liệu PDF bằng mã QR bằng Python

Vui lòng làm theo các bước được đề cập bên dưới để ký vào tệp PDF theo chương trình.

  • Tạo một phiên bản của SignApi
  • Đặt đường dẫn tệp PDF
  • Xác định Dấu hiệuQRCodeTùy chọn
  • Đặt loại chữ ký, văn bản và mã
  • Đặt vị trí chữ ký
  • Xác định SignSettings
  • Gán SignQRCodeOptions và SaveOptions cho SignSettings
  • Tạo CreateSignaturesRequest
  • Nhận kết quả bằng cách gọi phương thức SignApi.create\signatures()

Đoạn mã sau cho biết cách ký tài liệu PDF bằng API REST.

# khởi tạo api
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)

fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "sample.pdf"

opts = groupdocs_signature_cloud.SignQRCodeOptions()
opts.signature_type = 'QRCode'
opts.text = 'GroupDocs.Signature Cloud'
opts.qr_code_type = 'Aztec'

# đặt vị trí chữ ký trên một trang
opts.left = 450
opts.top = 0
opts.width = 90
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\\signedQRCode_sample.pdf"
settings.file_info = fileInfo

request = groupdocs_signature_cloud.CreateSignaturesRequest(settings)
response = api.create_signatures(request)
Ký tài liệu PDF bằng mã QR

Ký tài liệu PDF bằng mã QR

Tải xuống tệp đã ký

Mẫu mã trên sẽ lưu tệp PDF đã ký trên đám mây. Bạn có thể tải xuống bằng mẫu mã sau:

# khởi tạo api
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)

request = groupdocs_signature_cloud.DownloadFileRequest("Output\\signedQRCode_sample.pdf", my_storage)
response = file_api.download_file(request)

# Di chuyển tệp đã tải xuống vào thư mục làm việc của bạn
shutil.move(response, "C:\\Files\\")

Xác minh chữ ký điện tử bằng Python

Vui lòng làm theo các bước được đề cập bên dưới để xác minh chữ ký từ tài liệu PDF được ký bằng Mã QR theo chương trình.

  • Tạo một phiên bản của SignApi
  • Đặt đường dẫn tệp PDF
  • Xác định tùy chọn VerifyQRCode
  • Cung cấp loại chữ ký, văn bản và mã
  • Xác định VerifySettings
  • Chỉ định VerifyQRCodeOptions và FileInfo cho VerifySettings
  • Tạo VerifySignatureRequest
  • Nhận kết quả bằng cách gọi phương thức SignApi.verify\signatures()

Đoạn mã sau cho biết cách xác minh chữ ký trong tài liệu PDF bằng API REST.

# khởi tạo api
api = groupdocs_signature_cloud.SignApi.from_keys(client_id, client_secret)

fileInfo = groupdocs_signature_cloud.FileInfo()
fileInfo.file_path = "Output\\signedQRCode_sample.pdf"

opts = groupdocs_signature_cloud.VerifyQRCodeOptions()
opts.signature_type = 'QRCode'
opts.text = 'GroupDocs.Signature Cloud'
opts.qr_code_type = 'Aztec'
opts.match_type = 'Contains'

opts.page = 1

settings = groupdocs_signature_cloud.VerifySettings()
settings.options = [opts]
settings.file_info = fileInfo

request = groupdocs_signature_cloud.VerifySignaturesRequest(settings)
response = api.verify_signatures(request)

print('Signature Verified: ' + str(response.is_success))

Thử trực tuyến

Vui lòng dùng thử công cụ chữ ký PDF trực tuyến miễn phí sau đây, được phát triển bằng cách sử dụng API ở trên. https://products.groupdocs.app/signature/pdf

Phần kết luận

Trong bài viết này, bạn đã học cách ký tài liệu PDF trên đám mây bằng API REST Chữ ký tài liệu bằng Python. Bạn cũng đã học cách lập trình tải tệp PDF lên đám mây rồi tải xuống tệp đã ký từ đám mây. Bạn có thể tìm hiểu thêm về GroupDocs.Signature Cloud API bằng cách sử dụng tài liệu. Chúng tôi cũng cung cấp phần Tham khảo API cho phép bạn hình dung và tương tác trực tiếp với các API của chúng tôi thông qua trình duyệt. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm