gpt4 book ai didi

javascript - 如何在Electron中将窗口图标设置为缓冲图像?

转载 作者:行者123 更新时间:2023-12-03 12:38:47 30 4
gpt4 key购买 nike

我有一个存储在缓冲区中的图像。我正在尝试将其设置为窗口图标,但找不到任何方法。没有图像的路径,所以我不能只使用win.setIcon('path/to/image')
我尝试执行以下操作,但未成功。

win.setIcon(buffer); // giving the buffer by itself
win.setIcon(buffer.toString('base64')); // giving the buffer as base64
win.setIcon(`data:image/png;base64,${buffer.toString('base64')}`); // giving as base64 url

let imageObject = new Image();
imageObject.src = `data:image/png;base64,${buffer.toString('base64')}`;
win.setIcon(imageObject); // giving image object

最佳答案

根据Electron's documentationBrowserWindow.setIcon ()采用字符串或NativeImage,这是Electron提供的数据类型。您可以使用以下代码将缓冲区转换为NativeImage:

const { nativeImage } = require ("electron");

win.setIcon (nativeImage.createFromBuffer (buffer));
如果这样做没有帮助,您还可以将缓冲区作为数据URL中的Base 64字符串(如您之前尝试过的)传递给函数 createFromDataURL。有关更多信息,请参见 documentation on NativeImage 。还值得注意的是,您可以将高级选项传递给 createFromBuffer函数,以便为Electron提供有关如何显示图标的更多提示。

关于javascript - 如何在Electron中将窗口图标设置为缓冲图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64655394/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com