我们正在评估Itext7 (因此我对IText7相当陌生),并且希望更改表中的字体。当然,一旦我有了字体,改变表格上的字体是很容易的,但是创建字体是很有挑战性的。我找到了一些简单的例子font = PdfFontFactory.createFont(FontConstants.TIMES_ITALIC, PdfEncodings.WINANSI);
但我想控制字体的大小,家庭等。我已经找到了以前版本的Itext的例子,这些例子看起来很简单。BaseFont helvetica = BaseFont.createFont(HELVETICA, CP1252, EMBEDDED); Font font = new Font(helvetica, 12, Font.NORMAL);
谢谢你的帮助。
发布于 2016-06-08 12:52:23
iText 7是相当新的。有iText 7:入门教程可以帮助您入门,但是我们仍然需要编写许多关于iText 7的特定方面的教程。
幸运的是,您发布的问题已经在第二个iText 7教程iText 7:积木中处理过了。您需要的信息在第一章:介绍PdfFont类中。
当您阅读本章时,您将了解字体的大小不应该是PdfFont类的属性。相反,您可以在使用此字体的对象级别上定义字体大小。
例如:
Text title1 = new Text("The Strange Case of ").setFontSize(12);
Text title2 = new Text("Dr. Jekyll and Mr. Hyde").setFontSize(16);
Text author = new Text("Robert Louis Stevenson");
Paragraph p = new Paragraph().setFontSize(8)
.add(title1).add(title2).add(" by ").add(author);
document.add(p);在本例中,"The Strange Case of "的字体大小为12;"Dr. Jekyll and Mr. Hyde"的字体大小为16;" by "和"Robert Louis Stevenson"的字体大小为8,因为该大小是在Paragraph级别定义的。" by "的字体大小是Paragraph的字体大小。没有为"Robert Louis Stevenson"定义字体大小,这意味着此Text对象继承了它所属的Paragraph的字体大小。
我目前正在研究第2章,您会注意到iText 7现在允许您通过在Document级别定义字体来更改Document的默认字体大小。这是iText 7的许多改进之一。
https://stackoverflow.com/questions/37702838
复制相似问题