1

我想将一个简单漂亮的 json 字符串(包含多个换行符 - 许多 \n)打印到一个 word 文档中。我尝试了以下方法,但 docx4j 只是在一行中打印了所有内联内容(没有 \n)。理想情况下,它应该打印多行漂亮的 json,因为它正在识别 json 字符串包含的“\n”:

1)

  wordMLPackage.getMainDocumentPart().addParagraphOfText({multiline pretty json String})

2)

  ObjectFactory factory = Context.getWmlObjectFactory();
  P p = factory.createP();
  Text t = factory.createText();
  t.setValue(text);
  R run = factory.createR();
  run.getContent().add(t);
  p.getContent().add(run);
  PPr ppr = factory.createPPr();
  p.setPPr(ppr);
  ParaRPr paraRpr = factory.createParaRPr();
  ppr.setRPr(paraRpr);
  wordMLPackage.getMainDocumentPart().addObject(p);

寻求帮助。谢谢。

4

1 回答 1

0

docx 文件格式不将 \n 视为换行符。

所以你需要在\n上分割你的字符串,或者创建一个新的P,或者使用w:br,像这样:

Br br = wmlObjectFactory.createBr(); 
run.getContent().add( br);
于 2015-07-24T07:40:52.913 回答