首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用java向Itext添加新字体

如何使用java向Itext添加新字体
EN

Stack Overflow用户
提问于 2011-08-03 15:20:11
回答 4查看 60.7K关注 0票数 20

当我想使用的字体是iText时,我会执行以下操作:

代码语言:javascript
复制
protected final static Font FONT_SIZE_11_BOLD = new Font(Font.HELVETICA, 11f, Font.BOLD);

然后我可以随心所欲地使用它,如下所示:

代码语言:javascript
复制
monthSize11 = new Chunk(month, FONT_SIZE_11_BOLD);

我想使用Arial而不是HELVETICA,但Arial不能直接使用。我是说,我不能

代码语言:javascript
复制
new Font(Font.ARIAL, 11f, Font.BOLD);

因为Arial没有在Font类中定义,但是Arial.ttf文件在我的系统中的C:\WINDOWS\Fonts下。问题是如何将Arial.ttf文件绑定到iText,以及如何使用它。

提前做好很多准备工作。

编辑:我想使用自己的字体。我的意思是,我有一个名为"myCompany.ttf“的文件,其中定义了自己的字体,在某些地方我必须使用。问题不仅仅是Arial的问题。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-08-03 15:34:26

代码语言:javascript
复制
BaseFont base = BaseFont.createFont("c:/windows/fonts/arial.ttf", BaseFont.WINANSI);
Font font = new Font(base, 11f, Font.BOLD);
....

阅读更多here

票数 28
EN

Stack Overflow用户

发布于 2013-12-18 04:26:33

从JAR中使用前导斜杠加载它;否则,使用字体的绝对路径(C:\...\fonts\Sansation_Regular.ttf)。例如:

代码语言:javascript
复制
Font font = FontFactory.getFont("/fonts/Sansation_Regular.ttf",
    BaseFont.IDENTITY_H, BaseFont.EMBEDDED, 0.8f, Font.NORMAL, BaseColor.BLACK);
BaseFont baseFont = font.getBaseFont();

字体的相对路径为:'src/main/resources/fonts'

  • Using Itext 5.4.5

票数 25
EN

Stack Overflow用户

发布于 2011-08-03 16:23:50

使用BaseFont.createFont创建新的字体对象。

您可以传递任何Type1或TTF字体。您只需确保您的字体文件随一起分发即可。参考BaseFont API

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6922959

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档