EldoS | Feel safer!

Software components for data protection, secure storage and transfer

Signing PDF signature fields remotely

Also by EldoS: Rethync
The cross-platform framework that simplifies synchronizing data between mobile and desktop applications and servers and cloud storages
Posted: 03/22/2013 06:18:52
by kostas - (Basic support level)
Joined: 03/13/2013
Posts: 7


I am trying to modify your sample on remote signing:


I want to sign a PDF document inside a specific signature field (remotely).
I create some signature fields inside a PDF file on the server and then I want the client to sign inside them remotely using the Java applet.

As far as I saw, the demo project doesn't sign inside signature fields and I've tried changing the PreSigner code to :

signature = doc.get_Signatures(doc.AddSignature(0)); // Added the 0 to sign in the first signature field.

...but I don't know how I should change the signature finalization code (and if I can change sth to alter the behaviour).

Can this be done and how?

Thanks in advance.
Posted: 03/22/2013 06:57:21
by Ken Ivanov (EldoS Corp.)

Thank you for your interest in our products.

Your modification of the pre-signing stage code is absolutely correct. There is no need to change anything in the finalization code - all the information regarding the signature to finalize is stored in the async operation state you get from the InitiateAsyncSign() method.

Please note however, that if you need to sign several signature fields within the same document, you will have to run a pair of pre-sign + finalize operations for each particular signature field. That's because each subsequent signature will cover all the preceding ones, and thus all the preceding signatures must have already been finalized and saved into the document.

Just let us know if we can be of any further assistance in this regard.
Posted: 03/22/2013 07:27:46
by kostas - (Basic support level)
Joined: 03/13/2013
Posts: 7

Thank you for your immediate response.

When you say InitiateAsyncSign() you mean TElPDFDocument.InitiateAsyncOperation(), right? That's what I see being used in the sample.

However, when I use:
signature = doc.get_Signatures(doc.AddSignature());
...a signature gets added (visible in the Acrobat Signature Panel), while when I use:
signature = doc.get_Signatures(doc.AddSignature(0));
...I don't see any signatures added (neither inside the signature fields nor in the Acrobat Signature Panel).
It seems that the PDF has been modified, but I don't see any signature.

I've just tried changing the signature.Invisible = true; to false, but I saw no difference.
Posted: 03/22/2013 07:59:35
by Ken Ivanov (EldoS Corp.)

Yes, exactly - it's InitiateAsyncOperation() that should be used.

Could you please send us the document that we could use to reproduce the issue locally? I've created a ticket for you in the Helpdesk, you can upload the document privately there.



Topic viewed 1091 times

Number of guests: 1, registered members: 0, in total hidden: 0


Back to top

As of July 15, 2016 EldoS Corporation will operate as a division of /n software inc. For more information, please read the announcement.

Got it!