Я использую электрон, чтобы сделать приложение, которое получает значки приложений. поэтому я использовал app.getFileIcon()
, чтобы получить значок и icon.toDataURL()
, и передать URL-адрес изображения с событием для индекса. html
, и он работает нормально, но когда я увеличиваю размер изображения, он получает размыто, потому что максимальный размер значка на app.getFileIcon()
может быть только 32 пикселей (или 48 в MacOs или linux)
вот как это выглядит (до увеличения высоты)
after height increase
Main.js
const { app, BrowserWindow, ipcMain, shell } = require('electron')
const path = require('path');
const { writeFileSync } = require('fs');
let win
function createWindow () {
// Create the browser window.
win = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true,
enableRemoteModule: true,
}
})
win.loadFile('public/index.html')
}
app.whenReady().then(createWindow)
// Get File Icons ------------------------------------------------
const filePath = path.normalize("C:\\Users\\hamid\\Desktop\\DualTouch\\NordVPN.lnk");
const realPath = shell.readShortcutLink(filePath).target
app.getFileIcon(realPath).then(icon => {
const ImgUrl = icon.toDataURL()
ipcMain.on('ImgUrl-request', (event)=>{
event.sender.send('ImgUrl-reply', ImgUrl)
})
writeFileSync('icon.png', icon.toPNG())
}).catch(err => console.log(err))
index.html
<!DOCTYPE html>
DualTouch