首页 文章

通过iText PDF将文件发送到服务器?

提问于
浏览
1

我通过我的应用程序使用iText动态创建一些PDF文件,我需要使用几个组件(TextField,CheckBox,RadioButtons等),然后将值提交给服务器 . 但是,其中一个要求是用户需要能够选择和发送文件以及其他值 . 我没有找到具体的组件,因此我要求对这种情况提供一些帮助 .

有没有办法创建某种输入文件,文件选择器等,并将其附加到生成的PDF文件?然后将此选定文件发送到服务器?

谢谢

1 回答

  • 0

    这在官方文档中有解释,更具体地说,在我的book的第9章的示例_1240804中 . 但是,在此示例中,我们将文件选择字段添加到现有PDF中,因此我为您提供了一个示例,说明如何从头开始创建文档时创建此类字段:FileSelectionExample

    创建文件选择字段就像任何其他文本字段一样,除了您必须使用 setOptions() 方法设置标志 . 如果要显示文件选择器,还必须添加JavaScript操作:

    TextField file = new TextField(writer, new Rectangle(36, 788, 559, 806), "myfile");
    file.setOptions(TextField.FILE_SELECTION);
    PdfFormField upload = file.getTextField();
    upload.setAdditionalActions(PdfName.U, PdfAction.javaScript(
                "this.getField('myfile').browseForFileToSubmit();", writer));
    writer.addAnnotation(upload);
    

    在完整示例中,我还添加了第二个字段,在使用 browseForFileToSubmit() 方法选择文件后,我将焦点设置为其他字段 . 我这样做是因为文件名只有在该字段失去焦点后才会在文件选择字段中显示 .

相关问题