在IText7中创建Pdfont

在IText7中创建Pdfont,itext,Itext,我们正在评估Itext7(因此我对Itext7相当陌生),并希望更改表中的字体。当然,一旦我有了字体,更改表格上的字体就很容易了,但是创建字体很有挑战性。我找到了一些简单的例子 font=PdfFontFactory.createFont(fontcants.TIMES_ITALIC,PdfEncodings.WINANSI); 但是我也想控制字体的大小、字体系列等。我已经找到了以前版本的Itext示例,这些示例看起来非常简单。 BaseFont helvetica=BaseFont.cr

我们正在评估Itext7(因此我对Itext7相当陌生),并希望更改表中的字体。当然,一旦我有了字体,更改表格上的字体就很容易了,但是创建字体很有挑战性。我找到了一些简单的例子

font=PdfFontFactory.createFont(fontcants.TIMES_ITALIC,PdfEncodings.WINANSI);

但是我也想控制字体的大小、字体系列等。我已经找到了以前版本的Itext示例,这些示例看起来非常简单。

BaseFont helvetica=BaseFont.createFont(helvetica,CP1252,嵌入式);
Font Font=新字体(helvetica,12,Font.NORMAL)


谢谢您的帮助。

文本7是相当新的。有很多方法可以让您开始学习,但我们仍然需要编写许多关于iText 7特定方面的教程

幸运的是,您发布的问题已经在第二个iText 7教程中讨论过了。你需要的信息在里面

阅读本章时,您将了解字体大小不应该是
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);
在本例中,
“奇怪的”
大小写为12<代码>“杰基尔博士和海德先生”
的字体大小为16<“代码>由”和
“Robert Louis Stevenson”
的字体大小为8,因为该大小是在
段落的级别定义的。
“by”
的字体大小是
段落的字体大小。没有为
“Robert Louis Stevenson”
定义字体大小,这意味着该
文本
对象继承了它所属的
段落的字体大小


我目前正在写第二章。您会注意到,iText 7现在允许您通过在
文档
级别定义字体来更改
文档
的默认字体大小。这是iText 7的众多改进之一。

Bruno。我必须了解iText7。我看到你写了一些关于它的书。你建议我用Java还是C?我对两种语言都有基本的了解。谢谢你的帮助!