クラウド上でプログラム的に QR コードを使用して PDF ドキュメントに電子署名できます。デジタル署名は、特定の規制の要件に準拠している限り、手書きの署名と同じ法的地位を提供します。この記事では、Python の REST API を使用して PDF ドキュメントに QR コードで署名する方法に焦点を当てます。

この記事では次のトピックについて説明します。

ドキュメント署名 REST API および Python SDK

groupdocsクラウド用署名

電子署名 PDF には、GroupDocs.Signature Cloud の Python SDK API を使用します。これを使用すると、サポートされているファイル形式のポータブルまたは単純なドキュメント、スプレッドシート、プレゼンテーション、および画像でさまざまなタイプの署名を作成、検証、検索できます。また、クラウド API の ドキュメント署名ファミリー メンバー として、.NET、Java、PHP、Android、Ruby、および Node.js SDK も提供します。

コンソールで次のコマンドを使用して、pip (Python 用パッケージ インストーラー) を使用して GroupDocs.Signature Cloud を Python プロジェクトにインストールできます。

pip install groupdocs_signature_cloud

手順と利用可能なコード例を開始する前に、ダッシュボード からクライアント ID とクライアント シークレットを取得してください。以下に示すように、コードに ID とシークレットを追加します。

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

Python の REST API を使用して PDF ドキュメントに署名する

以下の簡単な手順に従って、QR コードを使用して PDF ドキュメントに署名できます。

ドキュメントをアップロードする

まず、以下のコード例を使用して、PDF ドキュメントをクラウドにアップロードします。

# APIの初期化
file_api = groupdocs_signature_cloud.FileApi.from_config(configuration)

# サンプルファイルをアップロードする
request = groupdocs_signature_cloud.UploadFileRequest("sample.pdf", "C:\\Files\\sample.pdf", my_storage)
response = file_api.upload_file(request)

その結果、アップロードされた PDF ファイル (sample.pdf) は、クラウド上のダッシュボードの ファイル セクション で利用できるようになります。

Python を使用して QR コードを使用して PDF ドキュメントに署名する

PDF ファイルにプログラムで署名するには、以下の手順に従ってください。

  • SignApi のインスタンスを作成する
  • PDFファイルのパスを設定する
  • SignQRCodeオプションの定義
  • 署名の種類、テキスト、コードを設定する
  • 署名位置を設定する
  • 署名設定の定義
  • SignQRCodeOptions と SaveOptions を SignSettings に割り当てる
  • CreateSignaturesRequest の作成
  • SignApi.create\signatures() メソッドを呼び出して結果を取得します

次のコード スニペットは、REST API を使用して PDF ドキュメントに署名する方法を示しています。

# 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'

# ページ上の署名位置を設定する
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)
QR コードを使用して PDF ドキュメントに署名

QR コードを使用して PDF ドキュメントに署名

署名付きファイルをダウンロードする

上記のコード サンプルは、署名された PDF ファイルをクラウドに保存します。次のコードサンプルを使用してダウンロードできます。

# 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)

# ダウンロードしたファイルを作業ディレクトリに移動します
shutil.move(response, "C:\\Files\\")

Python を使用して電子署名を検証する

QR コードで署名された PDF ドキュメントの署名をプログラムで検証するには、以下の手順に従ってください。

  • SignApi のインスタンスを作成する
  • PDFファイルのパスを設定する
  • VerifyQRCodeオプションの定義
  • 署名の種類、テキスト、コードを指定する
  • VerifySettings の定義
  • VerifyQRCodeOptions と FileInfo を VerifySettings に割り当てる
  • VerifySignatureRequest の作成
  • SignApi.verify\signatures() メソッドを呼び出して結果を取得します

次のコード スニペットは、REST API を使用して PDF ドキュメント内の署名を検証する方法を示しています。

# 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))

オンラインで試す

上記の API を使用して開発された、次の無料のオンライン PDF 署名ツールをお試しください。 https://products.groupdocs.app/signature/pdf

結論

この記事では、Python を使用してドキュメント署名 REST API を使用してクラウド上で PDF ドキュメントに署名する方法を学習しました。また、プログラムによって PDF ファイルをクラウドにアップロードし、署名されたファイルをクラウドからダウンロードする方法も学習しました。 GroupDocs.Signature Cloud API の詳細については、ドキュメント を使用して学習できます。また、ブラウザーを通じて直接 API を視覚化し操作できるようにする API リファレンス セクションも提供しています。不明な点がある場合は、フォーラム でお気軽にお問い合わせください。

関連項目