如何在SWT中从InputStream加载字体?

我需要从SWT中的Java ResourceInputStream加载字体( .otf.ttf )文件。

org.eclipse.swt.graphics.Device.loadFont(String path)允许我( 示例 )从字体文件路径加载字体(并且它可以工作),但没有相应的方法从任何其他源加载它。

我正在考虑使用java.awt.Font.createFont(int fontFormat, InputStream fontStream) ,然后在AWT java.awt.Font构建org.eclipse.swt.graphics.FontDataorg.eclipse.swt.graphics.Font对象宾语。

既然我还没有尝试过这个选项(我甚至不知道它是否有效)我只是想知道是否还有其他选择?

不是很好,但您始终可以将流写入临时文件,并使用可用方法。