diff options
author | Thomas <> | 2023-01-13 14:02:43 +0100 |
---|---|---|
committer | Thomas <> | 2023-01-13 14:02:43 +0100 |
commit | f6d416f004ed294cff71e25358d7b37a9750a1b6 (patch) | |
tree | 69a5eeda9252de5ebe46069a1f4b178b0eedaaab /pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java | |
parent | 7e0a617fc75016d059ca1a976c76c307cb805bc9 (diff) | |
download | pdf-as-4-f6d416f004ed294cff71e25358d7b37a9750a1b6.tar.gz pdf-as-4-f6d416f004ed294cff71e25358d7b37a9750a1b6.tar.bz2 pdf-as-4-f6d416f004ed294cff71e25358d7b37a9750a1b6.zip |
fix(sigblock): invalid preview in case of sig-blocks with more than half page height
Issue: #68
## Info:
This is only a work-around, because it looks like a general issue in methods to create visual signature tables.
T
Diffstat (limited to 'pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java')
-rw-r--r-- | pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java b/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java index ef1f14b2..42f16598 100644 --- a/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java +++ b/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java @@ -363,7 +363,7 @@ public class PADESPDFBOXSigner implements IPdfSigner, IConfigurationConstants { } properties = new PDFAsVisualSignatureProperties(pdfObject.getStatus().getSettings(), pdfObject, - (PdfBoxVisualObject) visualObject, positioningInstruction, signatureProfileSettings); + (PdfBoxVisualObject) visualObject, positioningInstruction, signatureProfileSettings, false); properties.buildSignature(); @@ -825,7 +825,7 @@ public class PADESPDFBOXSigner implements IPdfSigner, IConfigurationConstants { positioningInstruction = Positioning.determineTablePositioning(new TablePos(), "", origDoc, visualObject, pdfObject.getStatus().getSettings()); } - + origDoc.close(); final SignaturePositionImpl position = new SignaturePositionImpl(); @@ -839,15 +839,16 @@ public class PADESPDFBOXSigner implements IPdfSigner, IConfigurationConstants { final PDFAsVisualSignatureProperties properties = new PDFAsVisualSignatureProperties( pdfObject.getStatus().getSettings(), pdfObject, (PdfBoxVisualObject) visualObject, - positioningInstruction, signatureProfileSettings); - + positioningInstruction, signatureProfileSettings, true); + + // build visual-signature form properties.buildSignature(); - PDDocument visualDoc; + + PDDocument visualDoc; synchronized (PDDocument.class) { visualDoc = PDDocument.load(properties.getVisibleSignature()); } - final float stdRes = 72; final float targetRes = resolution; final float factor = targetRes / stdRes; @@ -859,7 +860,7 @@ public class PADESPDFBOXSigner implements IPdfSigner, IConfigurationConstants { visualDoc.close(); pdfRenderer = null; - + final BufferedImage cutOut = new BufferedImage( (int) (position.getWidth() * factor), (int) (position.getHeight() * factor), |