diff --git a/pythonProject/sign.py b/pythonProject/sign.py index 079116f..cf90e54 100644 --- a/pythonProject/sign.py +++ b/pythonProject/sign.py @@ -1,4 +1,5 @@ import io +from random import randint from typing import Optional from pyhanko import stamp @@ -49,8 +50,8 @@ class SignOrchestrator: reason=reason, ) - def sign(self, reason: str, signature_index: int, input_content: Buffer, on_page: int, box_place: (int, int, int, int), signer_text: str) -> io.BytesIO: - field_name = 'Signature' + str(signature_index) + def sign(self, reason: str, signature_index: int|None, input_content: Buffer, on_page: int, box_place: (int, int, int, int), signer_text: str) -> io.BytesIO: + field_name = 'Signature' + str(signature_index) if signature_index is not None else 'Signature'+ str(randint(1000, 99999999999)) signature_meta = self._make_signature_metadata(reason, field_name) pdf_signer = signers.PdfSigner( diff --git a/pythonProject/sign_individual.py b/pythonProject/sign_individual.py index bb9e404..4a17d87 100644 --- a/pythonProject/sign_individual.py +++ b/pythonProject/sign_individual.py @@ -13,7 +13,7 @@ orchestrator = SignOrchestrator('./assets/dummy.p12', pkcs12_password=None) with open('./assets/test.pdf', 'rb') as input: - signed_content = orchestrator.sign(reason="first signer", signature_index=0, + signed_content = orchestrator.sign(reason="first signer", signature_index=None, input_content=input.read(), box_place=(300, 600, 500, 660), on_page=0, signer_text="Mme Caroline Diallo") @@ -21,7 +21,7 @@ with open('./assets/test.pdf', 'rb') as input: output.write(signed_content.read()) with open('./assets/test_signed_0.pdf', 'rb') as input: - signed_content = orchestrator.sign(reason="second signer", signature_index=1, + signed_content = orchestrator.sign(reason="second signer", signature_index=None, input_content=input.read(), box_place=(100, 600, 300, 660), on_page=0, signer_text="M. Bah Mamadou")