diff options
Diffstat (limited to 'pdf-as-cli/src/test/java/at/gv/egiz/pdfas/cli/test/CorruptPDF.java')
-rw-r--r-- | pdf-as-cli/src/test/java/at/gv/egiz/pdfas/cli/test/CorruptPDF.java | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/pdf-as-cli/src/test/java/at/gv/egiz/pdfas/cli/test/CorruptPDF.java b/pdf-as-cli/src/test/java/at/gv/egiz/pdfas/cli/test/CorruptPDF.java new file mode 100644 index 00000000..b107474f --- /dev/null +++ b/pdf-as-cli/src/test/java/at/gv/egiz/pdfas/cli/test/CorruptPDF.java @@ -0,0 +1,77 @@ +package at.gv.egiz.pdfas.cli.test; + +import java.io.File; +import java.io.FileOutputStream; +import java.io.IOException; + +import javax.activation.DataSource; +import javax.activation.FileDataSource; + +import at.gv.egiz.pdfas.common.exceptions.PDFASError; +import at.gv.egiz.pdfas.common.settings.ISettings; +import at.gv.egiz.pdfas.lib.api.Configuration; +import at.gv.egiz.pdfas.lib.api.PdfAs; +import at.gv.egiz.pdfas.lib.api.PdfAsFactory; +import at.gv.egiz.pdfas.lib.api.sign.SignParameter; +import at.gv.egiz.pdfas.lib.impl.PdfAsImpl; +import at.gv.egiz.pdfas.sigs.pades.PAdESSigner; +import at.gv.egiz.sl.util.BKUSLConnector; + +public class CorruptPDF { + + public static void main(String[] args) throws IOException, PDFASError { + final File CFG_FOLDER = new File( + "/home/afitzek/.pdfas"); + + final File OUT_FOLDER = new File("/home/afitzek/tmp"); + + final String PROFILE = "UNTERSCHREIBE_AT_Q_EN"; + + final File LOGO = new File(CFG_FOLDER, + "images/WIRELESS_MONTENEGRO_logo.png"); + + final String SCALE_TO_FIT = "41.102;31.802"; + + final File FILE_TO_BE_SIGNED = new File("/home/afitzek/empty.pdf"); + + PdfAsImpl pdfAsImpl = new PdfAsImpl(CFG_FOLDER); + + FileOutputStream fout = new FileOutputStream(new File(OUT_FOLDER, + PROFILE + ".pdf")); + + DataSource toBeSignedDataSource = new FileDataSource(FILE_TO_BE_SIGNED); + + Configuration configuration = pdfAsImpl.getConfiguration(); + + //configuration.setValue(REGISTER_PROVIDER, Boolean.toString(true)); + + PdfAs pdfAsApi = PdfAsFactory.createPdfAs((ISettings) configuration); + + Configuration config = pdfAsApi.getConfiguration(); + + if (SCALE_TO_FIT != null) { + + config.setValue("sig_obj." + PROFILE + + ".table.main.Style.imagescaletofit", SCALE_TO_FIT); + + } + + config.setValue("sig_obj." + PROFILE + ".value.SIG_LABEL", + LOGO.getCanonicalPath()); + + SignParameter signParameters = PdfAsFactory.createSignParameter(config, + toBeSignedDataSource, fout); + + signParameters.setSignatureProfileId(PROFILE); + + signParameters.setPlainSigner(new PAdESSigner( + new BKUSLConnector(config))); + + pdfAsApi.sign(signParameters); + + fout.flush(); + + fout.close(); + } + +} |