2011-10-24 60 views
3

我正在使用iText生成PDF文件,其中可能包含嵌入的字体。 iText包含一个DefaultFontMapper类,它允许我们指定一个目录,从中加载字体,然后根据需要将其嵌入生成的PDF文件中。程序本身运行在各种环境中(Windows,Linux,Solaris ...),手动指定目录导致过去出现错误(由于目录被忽略)。有没有办法列出在java中加载字体的所有目录?

我的问题是,“是否有一种方法在java中获取所有从中加载字体的目录?”

+0

见我的回答如下 - unfortunaltely只能解决部分问题,很好的问题虽然,+1 –

回答

3

我认为这是唯一可以列出当前使用fontNames(可能会非常棘手,由于GraphicsEnvironment无头环境中使用)

GraphicsEnvironment.getLocalGraphicsEnvironment() 
      .getAvailableFontFamilyNames(); 
+1

我想我正在尝试获取API设计者故意试图抽象出来的东西。谢谢回复。 – tofarr

+0

请参阅[此示例](http://stackoverflow.com/questions/6965038/getting-fonts-sizes-bold-etc/6965149#6965149)。 –

+0

列出字体相当简单 - 不幸的是字体没有包含它们加载的文件的信息,所以似乎没有一种简单的方法可以做到这一点。我最终设置了一个可用于指定其他字体目录的配置文件 - 这并不完美,但现在必须完成 – tofarr

相关问题