【发布时间】:2013-07-04 14:23:22
【问题描述】:
我需要帮助才能从 ArrayList 字符串创建 PDF 文件。
我试图解决这个问题很长时间但我没有成功,有人可以帮助我吗?
我不知道在这里还能写什么我认为标题说明了一切。那么有没有人有同样的问题或知道如何创建 PDF 文件?
parsedText 是我从另一个 PDF 文件中提取的整个文本。
代码:
String[] splitText = parsedText.split("\\.");
newList = new ArrayList<String>(Arrays.asList(splitText));
PDDocument doc = null;
PDPage page = null;
try{
doc = new PDDocument();
page = new PDPage();
doc.addPage(page);
PDFont font = PDType1Font.HELVETICA;
PDPageContentStream content = new PDPageContentStream(doc,page);
content.beginText();
content.setFont(font, 12);
content.moveTextPositionByAmount(100, 700);
String text = "";
for(int i=0; i<newList.size();i++)
{
if(sentence.isEmpty()) continue;
content.drawString(newList.get(i) + "\n");
}
content.endText();
content.close();
doc.save("nameoffile.pdf");
doc.close();
System.out.print("Pages" + pdDoc.getNumberOfPages());
}catch(Exception e){
System.out.println(e);
}
【问题讨论】:
-
pdfbox.apache.org/cookbook/documentcreation.html 究竟是什么不工作,你有什么尝试?
-
我没有成功。怎么会这样?愿意向我们展示您失败的尝试吗?
-
arraylist 中的每个索引都是一个句子,当我尝试在 pdf 文件中写入 arraylist 时,它会在 arraylist 中写入一行。它不会像普通文本那样中断并以新行开头。
-
你必须定位文本。查看我第一条评论中的链接。注意第二个示例中的
contentStream.moveTextPositionByAmount( 100, 700 );行。 -
我确实有那行代码,我会尝试编辑问题并添加代码。正如你所看到的,我是 SOF 的新手,很抱歉我的帖子很糟糕。