我正在阅读.txt
文件中的一些文字并将其写入pdf文件。但在我的pdf中,文本显示为更大的字体。即使我已将.txt
文件的字体大小更大或更小,pdf中的字体也会相同。
我的部分代码正在阅读文本文件中的阅读
Document document = new Document(PageSize.A4.rotate(), 36, 36, 80, 160);
........
.........
document.newPage();
//Writing in a default page from the txt file
document.add(new com.lowagie.text.Paragraph("\n"));
iStream = new FileInputStream(path1); //path1 is location of .txt file
in = new DataInputStream(iStream);
is = new InputStreamReader(in);
br = new BufferedReader(is);
String strLine;
while ((strLine = br.readLine()) != null)
{
Paragraph para = new com.lowagie.text.Paragraph(strLine + "\n");
para.setAlignment(Element.ALIGN_JUSTIFIED);
document.add(new com.lowagie.text.Paragraph(strLine + "\n"));
}
br.close();
is.close();
in.close();
iStream.close();
document.close();
writer.close();
抱歉,我正在使用较低版本的itext,因为我现在无法将任何第三方库添加到我的windchill.This版本的itext已经在我的windchill中了。
如何在写入PDF文件时设置pdf文件中的字体大小。任何帮助都会非常有用。
答案 0 :(得分:2)
非常简单:D
拳头,我会改变一件事:
while ((strLine = br.readLine()) != null) {
Paragraph para = new com.lowagie.text.Paragraph(strLine + "\n");
para.setAlignment(Element.ALIGN_JUSTIFIED);
document.add(para);
}
这样,该段落在文件中是合理的。你这样做了,你改变了一个paragaph-object的文本对齐方式,但后来又为PDF添加了一个完全不同的新文本。
现在你的问题:
您可以在每个Paragraph`构造函数中指定Font
,如下所示:
Paragraph para = new com.lowagie.text.Paragraph(strLine + "\n", FontFactory.getFont("Arial", 14f /*This is the size, but as a float!*/);
可以找到lowagie API的完整文档here。
最好的问候