从一个eclipse插件中,我想修改默认的编辑器文本字体,我通过以下方法管理tp:
WorkbenchPlugin.getDefault().getPreferenceStore().put(JFaceResources.TEXT_FONT, "dummy font values");
问题是我要设置的字体(Source Code Pro
)未安装在系统中,并且不应该安装。
我从here下载了字体,但没有找到从下载的文件加载字体并将其设置为JFaceResources.TEXT_FONT
prefs条目的值的方法。
org.eclipse.swt.graphics.Device
的方法loadFont(String path)
看起来很有希望,但是Display.getCurrent()
在我的插件中返回了null
。
如何从文件中加载字体?
加载后如何在插件中设置字体?
答案 0 :(得分:3)
尝试以下代码段。在大多数情况下都可以使用。我通过参考SO问题链接---> Load a font in RCP
来获得此摘要。final String path = "fonts/helveticaNeueBold_iOS7.ttf";
final URL pathUrl = BundleUtility.find(PLUGIN_ID, path);
final String filePathAsString = FileLocator.toFileURL(pathUrl).getPath().toString();
final boolean isFontLoaded = Display.getCurrent().loadFont(filePathAsString);