如何将多行值设置为PDField

时间:2015-01-08 07:51:30

标签: java pdfbox

我正在使用PDFBox 1.8.x填写PDF文档中的acroform。为此,我迭代文档中的所有PDField并设置存储在我的HashMap(aParameter)中的正确值。

  PDAcroForm acroform = aTemplate.getDocumentCatalog().getAcroForm();
  List fields = acroform.getFields();
  for(int i=0; i<fields.size(); i++)
  {
    PDField field = (PDField) fields.get(i);
    String lValue = aParameter.get(field.getPartialName());
    if(lValue != null) field.setValue(lValue);
    field.setReadonly(true);   
  }

除了我唯一的多行文本框外,它的工作效果非常好。在我生成的PDF中,正确的文本位于我的多行文本框中,但没有任何新行。在搜索原因的过程中,我发现了一些非常古老的答案,即PDFBox不支持多行,但它无法在其自身上设置新的行字符。这种行为是否仍然是最新的?或者,当达到文本框的宽度时,是否有可能自动将文本分解为新行?

This answer看起来像一个解决方案,但他们正在使用另一种技术(drawString)来编写PDF。是否有可能修改此想法以匹配我填写PDFields的行为?

我对任何想法感到高兴!

0 个答案:

没有答案