aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java
diff options
context:
space:
mode:
authorThomas <>2023-01-13 14:02:43 +0100
committerThomas <>2023-01-13 14:02:43 +0100
commitf6d416f004ed294cff71e25358d7b37a9750a1b6 (patch)
tree69a5eeda9252de5ebe46069a1f4b178b0eedaaab /pdf-as-pdfbox-2/src/main/java/at/gv/egiz/pdfas/lib/impl/signing/pdfbox2/PADESPDFBOXSigner.java
parent7e0a617fc75016d059ca1a976c76c307cb805bc9 (diff)
downloadpdf-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.java15
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),