这个错误是因为您使用的字体(Times-Roman)不支持某些字符,导致无法正确显示文本。解决方法是更换字体,或者添加缺失的字符到字体中。
如果您需要支持中文等非ASCII字符,可以使用支持Unicode编码的字体,例如Arial Unicode MS、SimSun等。示例代码如下:
```
// 创建PDF页面内容
PDPageContentStream contentStream = new PDPageContentStream(pdfDocument, page);
contentStream.beginText();
PDFont font = PDType0Font.load(pdfDocument, new File("path/to/arial-unicode-ms.ttf"));
contentStream.setFont(font, 12);
contentStream.newLineAtOffset(100, 700);
for (XWPFParagraph paragraph : document.getParagraphs()) {
contentStream.showText(paragraph.getText());
contentStream.newLine();
}
contentStream.endText();
contentStream.close();
```
其中,`PDType0Font.load()`方法用于加载Unicode编码的字体文件,`newLineAtOffset()`方法用于设置文本起始位置。
如果您需要添加缺失的字符到字体中,可以使用字体编辑器软件进行操作。具体步骤请参考相关文档和教程。