Bra*_*rad 3 java fonts file path
我在Java中有一个Font对象用于字体文件.我需要将该对象转换为File对象或获取字体文件路径.
有没有办法做到这一点?
我在这里做的是从外部库调用一个方法来加载一个字体文件,以便在写入时使用它:
loadTTF(PDDocument pdfFile, File fontfile);
Run Code Online (Sandbox Code Playgroud)
所以我想让用户使用以下命令从操作系统中定义的字体中选择一种字体:
GraphicsEnvironment e = GraphicsEnvironment.getLocalGraphicsEnvironment();
Font[] fonts = e.getAllFonts();
Run Code Online (Sandbox Code Playgroud)
然后当用户选择字体时,我将其传递给loadTTF(...)方法以加载它.
这里有不好的做法吗?
小智 5
// use reflection on Font2D (<B>PhysicalFont.platName</B>) e.g.
Font f = new Font("Courier New", 0, 10);
Font2D f2d = FontManager.findFont2D(f.getFontName(), f.getStyle(),
FontManager.LOGICAL_FALLBACK).handle.font2D;
Field platName = PhysicalFont.class.getDeclaredField("platName");
platName.setAccessible(true);
String fontPath = (String)platName.get(f2d);
platName.setAccessible(false);
// that's it..
System.out.println(fontPath);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6659 次 |
| 最近记录: |