2014-06-18 140 views
2

我正在使用iTextSharp将数据填充到在OpenOffice中创建的PDF模板。 它填充罚款,我得到正确的PDF,但即将到来的可编辑模式。我想不可编辑PDF。并且还使某些行BOLD(由程序)。下面是我的代码片段。使AcroFields(iTextSharp)不可编辑并设置为粗体

PdfStamper stamper = new PdfStamper(reader, outputStream); 
AcroFields fields = stamper.getAcroFields(); 
//loop 
fields.setField("Desc_", "HILINSKI, MARK"); 

请帮帮我。 谢谢。

回答

3

如果您不希望表单可编辑,请使用表单展开,如在FillDataSheet示例中所做的那样。添加到您的代码:

fields.setGenerateAppearances(true); 
stamper.setFormFlattening(true); 

如果要更改特定字段的字体,使用setFieldProperty()方法来改变"textfont"如在TextFieldFonts例子做:

BaseFont bold = 
     BaseFont.createFont(BaseFont.HELVETICA_BOLD, BaseFont.WINANSI, BaseFont.NOT_EMBEDDED); 
form.setFieldProperty("Desc_", "textfont", bold, null); 

欲了解更多信息,阅读official documentation

相关问题