Question

Je dois remplir un formulaire pdf (utilisé pour transmettre des données en ligne) qui est d'avoir des champs XFA et en utilisant iText pour cela. Je suis en mesure de générer le lecteur compatible document pdf mais les champs ne sont pas remplis.

S'il vous plaît suggérer comment puis-je le faire fonctionner.

Était-ce utile?

La solution

Tout ce que vous avez besoin est ceci:

private void fillXmlInPdf(File xmlFile, File inputPdf, File outputPdf) throws IOException, DocumentException, FileNotFoundException, CsmartException {
    PdfStamper stamper=null;
    try {
        PdfReader reader = new PdfReader(inputPdf.getAbsolutePath());
        stamper = new PdfStamper(reader, new FileOutputStream(outputPdf), '\0', true);
        AcroFields afields = stamper.getAcroFields();
        XfaForm xfa = afields.getXfa();
        xfa.fillXfaForm(new FileInputStream(xmlFile));
    } catch (Exception e) {
        e.printStackTrace();
    }finally {
        try {
            stamper.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Ce code fonctionne bien pour moi ...

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top