是否有Electron或Node.js应用程序访问系统级图标的标准方法?

时间:2019-04-08 18:44:54

标签: node.js electron

我希望能够在基于电子的实用程序(例如启动器和文件检查器)中显示系统级应用程序和文件图标。电子或Node.js应用程序是否有访问系统级图标的标准方法?

我查看了Electron文档,发现最接近的是macOS中represented files的条目,但是我还没有看到有关通过Electron API公开的系统级图标的任何信息。

如果有一个标准的跨平台Electron或Node.js API可以为特定的应用程序和文件加载系统级图标资源,我想了解一下。失败的话,我欢迎您建议使用其他Electron或Node.js API读取图标资源。

编辑:这是一个潜在的相关问题(尽管特定于平台):Display .icns file in electron renderer process

1 个答案:

答案 0 :(得分:3)

最明显的Electron API函数是app.getFileIcon,但看来它只能为应用程序和文档提供通用图标,这可能对您的应用程序来说足够好了……

  

app.getFileIcon(路径[,选项],回调)

path String

options Object (optional)

    size String
        small - 16x16
        normal - 32x32
        large - 48x48 on Linux, 32x32 on Windows, unsupported on macOS.

callback Function
    error Error
    icon NativeImage
     

获取路径的相关图标。

     

在Windows上,有2种图标:

Icons associated with certain file extensions, like .mp3, .png, etc.
Icons inside the file itself, like .exe, .dll, .ico.
     

在Linux和macOS上,图标取决于与   文件mime类型。

请参阅:app.getFileIcon() does not return the expected file icon