java - iText 在现有 pdf 上创建只读文本字段

标签 java itext

这是我的设置,我有一个现有的 PDF 文件,我想向其中添加字段。我已成功添加字段并设置选项,但如果我将 READ_ONLY 选项添加到该字段,我将丢失我的 MULTILINE 选项。尽管我将其设置为任何字体大小,但它仍然保持字体大小。我还尝试在设置其他选项之前放置 READ_ONLY 选项。

ByteArrayOutputStream baos = new ByteArrayOutputStream();
PdfReader reader = new PdfReader("PDF PATH");
PdfStamper stamper;
stamper = new PdfStamper(reader, baos);
AcroFields fields = stamper.getAcroFields();

TextField textField = new TextField(stamper.getWriter(), new Rectangle(18, 200, 380, 278), "newTextField");
textField.setOptions(TextField.MULTILINE);
textField.setFontSize(0f);
textField.setText("VERY LONG TEXT");
//textField.setOptions(TextField.READ_ONLY); If I add this option my textfield is no longer multiline
stamper.addAnnotation(textField.getTextField(), 1);

stamper.close();

最佳答案

因为当您再次调用 setOptions() 时,内部值将被覆盖。

如果你想同时使用这两个功能,你必须组合选项并一次保存:

textField.setOptions(TextField.MULTILINE | TextField.READ_ONLY);

关于java - iText 在现有 pdf 上创建只读文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50244996/

相关文章:

java - 使用 setTrafficClass 和 WireShark 的 DSCP 标记问题

java - 难以从新闻网页中提取主要内容

java - Toast 消息不显示

java - Android SDK 版本 23.6

java - iText 段落溢出处理

java - Spring 数据。存储库返回错误的Id(实体数据正确)

java - iText PdfStamper 增加签名 pdf 的大小

c# - MVCRazorToPdf (iTextSharp) 使用自定义字体

java - 使用相对路径链接到另一个文件时出现问题

java - 从 PDF 图像中提取文本