Fabio commented on PDFBOX-3396:

Hi Maruan,
I've tryed the 2.0.4 version. It's ok to fix the new Issue but, as you just 
say, it doesn't fit very well for the position of the signature image after 
flattening. For me that situation it's ok, because after some attempts, I've 
changed strategy. Now, I'm using the PDFRenderer class of PDFBox to convert 
each page of a signed file into a compress image(the file 
'Signed-Document-Image-Printed.pdf' just uploaded is an example). With this 
technique, every signature image appear and remain in the correct position. The 
size of the printed pdf is big, but for us that isn't a real problem. For me, 
you can close the reopened issue. Thank you very much for you patience, time, 
great job and attention about my issues.

Best regardes,

> flattaning AcroForm with visible sign field ETSI.CAdES.detached
> ---------------------------------------------------------------
>                 Key: PDFBOX-3396
>                 URL: https://issues.apache.org/jira/browse/PDFBOX-3396
>             Project: PDFBox
>          Issue Type: Bug
>          Components: AcroForm
>    Affects Versions: 2.0.1, 2.0.2
>         Environment: Java 8 - Spring Boot
>            Reporter: Fabio
>            Assignee: Maruan Sahyoun
>            Priority: Critical
>             Fix For: 2.0.4, 2.1.0
>         Attachments: Signed-Document-1.pdf, Signed-Document-2.pdf, 
> Signed-Document-3.flatten.20160912.pdf, Signed-Document-3.pdf, 
> Signed-Document-4.pdf, Signed-Document-Flattened-1.pdf, 
> Signed-Document-Flattened-2.pdf, Signed-Document-Flattened-3+4.pdf, 
> Signed-Document-Flattened.pdf, Signed-Document-Image-Printed.pdf, 
> Signed-Document.pdf
> Hallo,
> I've got a problem with the flattaning function of AcroForm class of a 
> PDSignatureField. I've a signed pdf document with ETSI.CAdES.detached visible 
> image at bottom of the file. I want to flattan the PDSignatureField of the 
> sign to eliminate sign cryptography element of the field and to embad the 
> sign marker immage of the sign, in the same position of the original immage 
> that is a part of the marker sign ETSI.CAdES.detached. I try this way(pseudo 
> code similare to real code):
> {code}
> PDDocument pdDoc = PDDocument.load("signed-document.pdf");
> PDDocumentCatalog pdCatalog = pdDoc.getDocumentCatalog();
> PDAcroForm acroForm = pdCatalog.getAcroForm();
> List<PDField> fields = acroForm.getFields();
> fields.stream().filter(pf -> 
> pf.getFieldType().toLowerCase().contains("sig")).forEach(pf -> {
> try {
>       PDSignatureField pfs = ((PDSignatureField)(pf));
>        log.info("START remove Sign Flags");
>        pfs.setReadOnly(true);
>        pfs.setRequired(false);
>        pfs.setNoExport(true);
>        log.info("END remove Sign Flags");
>        log.info("START flatten field");
>        pfs.getAcroForm().flatten();
>        pfs.getAcroForm().refreshAppearances();
>        log.info("END flatten field");
> } catch (Exception ex) {
>    log.error("flattenFile --> Error: " + ex.getMessage());
>    throw new RuntimeException(ex);
> }
> });
> ByteArrayOutputStream baos = new ByteArrayOutputStream();
> pdDoc.save(baos);
> .
> .
> .
> {code}                
> At the and of the process, the pdf file in output, has no sign cryptography 
> element, but the visible marker immage of the sign is placed in a wrong 
> position, on top of sign above paragraph of the document and not in original 
> position of the signed marker immage. That's happen when i call the following 
> method:
> {code}
>        pfs.getAcroForm().flatten();
> {code}
> In other words, the flattened pdf of the original signed pdf, has in a 
> correct way no more sign inside but, the immage of the ETSI.CAdES.detached 
> signe is embedded in a wrong position, over the text of the nearest above 
> paragraph of the pdf document.
> My questions are: 
> 1-My way, is the correct way to flattan a signed ETSI.CAdES.detached file?
> 2-Is there a method to remove CadES/PadES sign with a official visible marker 
> image and, embad immage in the acctual original position in pdf file?
> Thank you for your support and sorry for my poor English.
> Best regards,
> Fabio Evangelista

This message was sent by Atlassian JIRA

To unsubscribe, e-mail: dev-unsubscr...@pdfbox.apache.org
For additional commands, e-mail: dev-h...@pdfbox.apache.org

Reply via email to