Java 如何使用iTextPDF创建段落?
我有这个移动应用程序,我需要将数据库中的一些行导出为pdf。我需要有一个pdf结构,以获得正确放置的信息。这是我的代码,但出于某种原因,PDF是空白的。主要目标是在开始时有一个标题,然后是数据库中的一行,然后输入并再次显示数据库查询结果中的另一行。希望有人能帮助我?提前感谢:Java 如何使用iTextPDF创建段落?,java,itext,Java,Itext,我有这个移动应用程序,我需要将数据库中的一些行导出为pdf。我需要有一个pdf结构,以获得正确放置的信息。这是我的代码,但出于某种原因,PDF是空白的。主要目标是在开始时有一个标题,然后是数据库中的一行,然后输入并再次显示数据库查询结果中的另一行。希望有人能帮助我?提前感谢: Document doc = new Document(); String outPath = Environment.getExternalStorageDirectory() + "/"+nomePDF+".pdf";
Document doc = new Document();
String outPath = Environment.getExternalStorageDirectory() + "/"+nomePDF+".pdf";
try {
PdfWriter.getInstance(doc, new FileOutputStream(outPath));
Font f=new Font(Font.FontFamily.TIMES_ROMAN,30.0f,Font.UNDERLINE, BaseColor.RED);
Paragraph p = new Paragraph("Group/Machine",f);
p.setAlignment(Element.ALIGN_CENTER);
p.setSpacingAfter(40f);
doc.add(p);
bd = new Databse(MainActivity.this);
Cursor c = bd.getGroupsNamesMachines();
if (c.moveToFirst()) {
do {
String group = c.getString(c.getColumnIndex("groupname"))+"\n"+c.getString(c.getColumnIndex("otherrow"));
doc.add(new Paragraph(group));
doc.add(new Paragraph("\n"));
} while (c.moveToNext());
}
doc.open();
doc.close();
我的目标结构是:
TITLE
row1
row2
row2
row2
您尝试在打开文档之前向文档添加内容
Document doc = new Document();
PdfWriter.getInstance(doc, new FileOutputStream(outPath));
[...]
doc.add(p);
[...]
doc.add(new Paragraph(group));
doc.add(new Paragraph("\n"));
[...]
doc.open();
doc.close();
将doc.open调用上移到PdfWriter.getInstance调用和第一个doc.add调用之间的位置