Cómo utilizar itext para generar una firma superpuesta en un PDF
El siguiente es el método, llámelo directamente
signo de vacío estático público (String beforePdfpath, String afterPdfpath, String pngpath) lanza una excepción {
// KeyStore ks = KeyStore.getInstance("pkcs12");
// ks.load(new FileInputStream("demo.p12"), "123456".toCharArray()); /123456 es contraseña de clave privada
// String alias = (String) ks.aliases().nextElement();
// PrivateKey key = (PrivateKey) ks.getKey (alias, "123456".toCharArray()); // 123456 es la clave privada. d("pdfd", "do-1-01");
FileOutputStream fout = new FileOutputStream(afterPdfpath);
Log.d(" pdfd", "do-1" -1");
PdfStamper stp = PdfStamper.createSignature(reader, fout, '\0');
PdfSignatureAppearance sap = stp.getSignatureAppearance();
// sap.setCrypto(key, chain, null, PdfSignatureAppearance.VERISIGN_SIGNED);
Log.d("pdfd", "do-3");
sap. setSignatureGraphic(imagen);
sap.setAcro6Layers(true);
sap.setRenderingMode(RenderingMode.GRAPHIC);
sap.p>
stp.getWriter().setCompressionLevel(5);
Log.d("pdfd", "do-4");
if (stp ! = null) {
Log.d("pdfd", "do-4-1");
stp.close()
Log.d(" pdfd", "do-4-2");
}
Log.d("pdfd", "do-5");
si (fout != nulo) {
fout.close();
}
Log.d("pdfd", "do-6");
if (lector ! = null) {
reader.close();
}
Log.d("pdfd" , "hacer-7");
}