Pdf.js: E-signature not showing up in pdf.js viewer

Created on 6 May 2014  ·  29Comments  ·  Source: mozilla/pdf.js

I have a document with an e-signature that is not showing up in the pdf.js viewer. The document used zipLogix Digital Ink as their e-signature provider. The document is uploaded into our application with the signature in place, but viewing the document in our app doesn't show the signature. Subsequently downloading the document again confirms the signature wasn't lost in the upload process.

*Note: I'm working on obtaining a document with the same characteristics that does not contain sensitive data.

4-annotations

Most helpful comment

I think simply this functionality is not implemented:

https://github.com/mozilla/pdf.js/blob/master/src/core/annotation.js#L527

    // Hide unsupported Widget signatures.
    if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

If I remove these lines I can see the signature impressed on my document. In the case of the issue attached pdf (https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf) I can see the signature but it appears inversed rotate:

test_pdf

All 29 comments

@StevenHarlow Thank you; we will definitely need an example PDF to look into the issue.

I'm closing this issue for now and we will reopen this when we have an example PDF to test with.

I have the same issue. The signature is not show in the viewer. Is the problem solved?
Here is a signed pdf,
https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf

This signed is not verified. But even with a verified valid signature, the signature field is not shown in the pdf.js viewer.

I have the same issue. In my case, the problem is only with invalid signatures. I have a pdf document with two signatures (one is valid and another one is invalid). In others pdf viewers I can see the two signatures impressed on the document, but in pdf.js I cannot. I'm sorry, I can't attach the sample document because it contains client confidential data.

EDITED: It seems that the problem is not only with invalid signatures, in my case the valid signature is a invisible sign.

I think simply this functionality is not implemented:

https://github.com/mozilla/pdf.js/blob/master/src/core/annotation.js#L527

    // Hide unsupported Widget signatures.
    if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

If I remove these lines I can see the signature impressed on my document. In the case of the issue attached pdf (https://dl.dropboxusercontent.com/u/5681461/dev/test-signature.pdf) I can see the signature but it appears inversed rotate:

test_pdf

Visible Signature widgets usually have an appearance stream just like most other annotations, and this one has it. The flipping may be a duplicate of #5946.

Flipping problem is solved now thatt #5946 is solved.

Hi folks - wondering if there was any timeline on a fix for this? Many thanks.

There appears to be some progress on digital signature verification in #1076.

@timvandermeij Thank you so much for the link.

Weird - a year ago I wrote "Flipping problem is solved" but now nothing is displayed, i.e. the yellow question mark is missing.

Still not solved at least for docs from zipLogix Digital Ink :
https://new.zipformplus.com
Some warnings from pdf.worker.js:
Warning: Unimplemented widget field type "Sig", falling back to base field type.

Idd, same problem: Unimplemented widget field type "Sig", falling back to base field type.

Any idea by when we could have an implementation of this widget delivered?
Would be great to know when parsing the PDF that there's a signed area.

We have implemented a digital signature solution based on PKIjs and PDFjs that is capable of verifying and creating digital signatures. You can see an example of it viewing the US Digital Signature law here.

image

The viewer currently trusts the CAs on the eIDAS Trust List as well the Mozilla trusted S/MIME issuers.

If you encounter any issues email me at [email protected] with sample files if any.

@rmhrisk Are you going to open source your solution?

@sreuter most of the libraries have been open sourced already, you can find the components in the https://github.com/PeculiarVentures/.

I want to Open Source the PDF library we built also which lets us work with many different kinds of PDF representations but this will need time to make it ready for public consumption.

I am working with someone on an improved set of examples for PKIjs that would make it easier for others to duplicate what we have done.

so is there a configuration to enable E-signature in pdf?
we try to comment

if (data.fieldType === 'Sig') {
      warn('unimplemented annotation type: Widget signature');
      this.setFlags(AnnotationFlag.HIDDEN);
    }

while in developing ?
how can we do in npm install a new pkg online?

There is not.

Disabling this block does not show the signature or it’s starus, it just shows a visual representation of the signature.

Enabling this block without doing the work to verify signature means you will be giving the user a false sense of security relating to the cirectness of the documents displayed.

May be, it's can be set by configuration instead the need of comment this line to render the signature widget ?
Because otherwise it is necessary to fork the code to be able to display the signature visual.

pdf.js
Warning: Unimplemented widget field type "Sig", falling back to base field type.
How to solve this problem?

The electronic postback was resolved and chrome failed to execute'postMessage'on'Dedicated Worker GlobalScope': could not be cloned.

since three years ago... any progress?

@yurydelendik pdf.js is just a viewer, Is not verifying digital signature too ambiguous? I can't understand why you do so much.

@hxlniada I think it is very important at least to show widget signature (Graphic Signature) also without verify signature.

We would also just like to see it. To say "unverified" is fine.

电子签章没显示是为什么?

因为PDF.js不支持数字签名。 查看https://verify.ink。 如果您要进行翻译,我们可以使用它来支持中文。

If you need digital signature support we created a web component and iframe wrapping our viewer that does support this. See https://verify.ink

Closing since this is a duplicate of #1076.

Was this page helpful?
5 / 5 - 1 ratings

Related issues

hp011235 picture hp011235  ·  4Comments

aaronshaf picture aaronshaf  ·  3Comments

xingxiaoyiyio picture xingxiaoyiyio  ·  3Comments

sujit-baniya picture sujit-baniya  ·  3Comments

BrennanDuffey picture BrennanDuffey  ·  3Comments