Существует ли стандартный способ для приложения Electron или Node.js получать доступ к значкам системного уровня? - PullRequest
0 голосов
/ 08 апреля 2019

Я хотел бы иметь возможность отображать значки приложений и файлов системного уровня в утилитах на базе Electron, таких как средства запуска и проверки файлов. Есть ли стандартный способ для приложения Electron или Node.js получать доступ к значкам системного уровня?

Я просматривал документы Electron, и самым близким, что я видел, была запись для представленных файлов в macOS, но я еще не видел ничего о значках системного уровня, предоставляемых через API Electron.

Если есть стандартный кроссплатформенный API Electron или Node.js для загрузки ресурсов значков системного уровня для конкретных приложений и файлов, я бы хотел узнать об этом. В противном случае я приветствую предложения по чтению ресурсов значков с помощью других Electron или Node.js API.

Редактировать: Вот потенциально важный (хотя и для платформы) вопрос: Отображение файла .icns в процессе электронного рендерера

1 Ответ

3 голосов
/ 08 апреля 2019

Наиболее очевидной функцией Electron API является app.getFileIcon , но, похоже, она может предоставить только универсальные значки для приложений и документов, которые могут быть достаточно хорошими для вашего приложения, или нет...

app.getFileIcon (path [, options], callback)

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 () делаетне вернуть ожидаемый значок файла

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...