aboutsummaryrefslogtreecommitdiff
path: root/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java
diff options
context:
space:
mode:
authorAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-03-26 10:59:51 +0100
committerAndreas Fitzek <andreas.fitzek@iaik.tugraz.at>2014-04-01 16:51:50 +0200
commitdce9a1535236da947d9f866421c4f0b8ae47e527 (patch)
treed56df9da1d621a0e666557993891e0804d52d0d2 /pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java
parent0596609c350efb8af333feb650317c8640921a94 (diff)
downloadpdf-as-4-dce9a1535236da947d9f866421c4f0b8ae47e527.tar.gz
pdf-as-4-dce9a1535236da947d9f866421c4f0b8ae47e527.tar.bz2
pdf-as-4-dce9a1535236da947d9f866421c4f0b8ae47e527.zip
Example Table in AP seems OK
Diffstat (limited to 'pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java')
-rw-r--r--pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java40
1 files changed, 28 insertions, 12 deletions
diff --git a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java
index 055f035d..24ef3881 100644
--- a/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java
+++ b/pdf-as-lib/src/main/java/at/gv/egiz/pdfas/lib/impl/stamping/pdfbox/PDFAsVisualSignatureProperties.java
@@ -7,10 +7,13 @@ import java.io.FileInputStream;
import java.io.IOException;
import org.apache.pdfbox.pdmodel.PDDocument;
+import org.apache.pdfbox.pdmodel.font.PDFont;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.visible.PDFTemplateBuilder;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.visible.PDFTemplateCreator;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.visible.PDVisibleSigProperties;
import org.apache.pdfbox.pdmodel.interactive.digitalsignature.visible.PDVisibleSignDesigner;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
import at.gv.egiz.pdfas.common.settings.ISettings;
import at.gv.egiz.pdfas.common.settings.SignatureProfileSettings;
@@ -21,9 +24,12 @@ import at.knowcenter.wag.egov.egiz.table.Table;
public class PDFAsVisualSignatureProperties extends PDVisibleSigProperties {
+ private static final Logger logger = LoggerFactory.getLogger(PDFAsVisualSignatureProperties.class);
+
private ISettings settings;
- private Table main;
+ private PDFBoxTable main;
+ private PDFont tableFont;
private PDFAsVisualSignatureDesigner designer;
@@ -31,18 +37,23 @@ public class PDFAsVisualSignatureProperties extends PDVisibleSigProperties {
this.settings = settings;
try {
SignatureProfileSettings profileSettings = TableFactory
- .createProfile("SIGNATURBLOCK_DE", settings);
-
- X509Certificate cert = new X509Certificate(new FileInputStream(
- "/home/andy/certificates/test.crt"));
+ .createProfile(object.getStatus().getRequestedSignature().getSignatureProfileID(),
+ settings);
+ //float width = object.getStatus().getRequestedSignature().getSignaturePosition().getWidth();
+ object.getStatus().getRequestedSignature().getCertificate();
+ X509Certificate cert = object.getStatus().getRequestedSignature().getCertificate();
CertificateHolderRequest request = new CertificateHolderRequest(
cert);
- main = TableFactory.createSigTable(profileSettings, "main",
+ Table mainTable = TableFactory.createSigTable(profileSettings, "main",
settings, request);
-
- main.setWidth(400);
+
+ main = new PDFBoxTable(mainTable, null, 230.f);
+
+ //tableFont = PDFont.
+
+ //main.setWidth(100);
} catch (Throwable e) {
e.printStackTrace();
}
@@ -50,8 +61,11 @@ public class PDFAsVisualSignatureProperties extends PDVisibleSigProperties {
PDDocument origDoc = PDDocument.load(new ByteArrayInputStream(
object.getStampedDocument()));
- designer = new PDFAsVisualSignatureDesigner(origDoc, 1);
-
+ designer = new PDFAsVisualSignatureDesigner(origDoc, 1, this);
+ designer.coordinates(100, 100);
+ float[] form_rect = new float[] {0,0, main.getWidth() + 2, main.getHeight() + 2};
+ logger.info("AP Rect: {} {} {} {}", form_rect[0], form_rect[1], form_rect[2], form_rect[3]);
+ designer.formaterRectangleParams(form_rect);
//this.setPdVisibleSignature(designer);
} catch (Throwable e) {
e.printStackTrace();
@@ -60,14 +74,16 @@ public class PDFAsVisualSignatureProperties extends PDVisibleSigProperties {
@Override
public void buildSignature() throws IOException {
- PDFAsVisualSignatureBuilder builder = new PDFAsVisualSignatureBuilder(this);
+ PDFAsVisualSignatureBuilder builder = new PDFAsVisualSignatureBuilder(this, this.settings);
PDFAsTemplateCreator creator = new PDFAsTemplateCreator(builder);
setVisibleSignature(creator.buildPDF(designer));
}
- public Table getMainTable() {
+ public PDFBoxTable getMainTable() {
return main;
}
+
+
}