【问题标题】:Display .icns file in electron renderer process在电子渲染器进程中显示 .icns 文件
【发布时间】:2022-03-16 14:36:37
【问题描述】:

我正在寻找一种在电子渲染器中显示 .icns 文件的方法。

在 osx 中所有图标(系统图标、应用程序图标)都以.icns 格式存储。我需要在我的电子应用程序中显示这些图标。

目前,当我需要显示一个图标时,我将它即时转换为 png 并使用<img /> 标签显示转换后的结果。

问题是它超级慢。此外,由于所有图标都以这种格式存储并且所有应用程序都使用它,因此应该有一种快速的本地方式来显示它们。

关于如何使用一些本机 API 来显示 icns 图像的任何想法?或者也许有一种更快的方法来使用电子 api 显示 .icns 文件?

【问题讨论】:

  • 您找到解决方案了吗?如果没有,您如何将 .icns 即时转换为 .png?干杯,摩根
  • @MorganR 是的,我找到了方法,你可以查看代码here
  • 最后我使用 iconutil 将 .icns 转换为 png 集合并使用其中一个,但我也喜欢这个,谢谢!

标签: javascript macos electron


【解决方案1】:

我编写了一个原生插件来将 icns 文件解析为 png 或 base64 URL。

// In main process
parseIcnsToPNG(icnsPath, pngPath);

// In renderer process
<img src={pngPath}/>

https://www.npmjs.com/package/electron-icns-ex

【讨论】:

    猜你喜欢
    • 2019-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-06
    • 2018-04-07
    • 2021-07-20
    • 2019-12-07
    • 1970-01-01
    相关资源
    最近更新 更多