Satu hal yang dapat Anda lakukan untuk Mac adalah meletakkan postinstallskrip di proyek Anda yang akan menyalin file .icns di tempatnya di bawah node_modules / secara otomatis.
theram
Jawaban:
164
Mengatur iconproperti saat membuat BrowserWindowhanya berpengaruh pada Windows dan Linux.
Untuk mengatur ikon pada OS X, Anda dapat menggunakan paket-elektron dan mengatur ikon menggunakan --iconsakelar.
Ini harus dalam format .icns untuk OS X. Ada ikon konverter online yang dapat membuat file ini dari .png Anda.
Mengatur ikon pada BrowserWindow ke file .PNG akan ditampilkan di taskbar di windows. Contohnya berfungsi dapat ditemukan di blog saya di sini: mylifeforthecode.com/... Mungkin path harus mutlak untuk bekerja ketika saya mengaturnya ke __dirname + 'path / to / icon.png'. Namun, untuk mengatur ikon untuk .exe, Anda harus menggunakan peretas paket-elektron ATAU peretas sumber daya.
Shawn Rakowski
Bisakah Anda memperbaiki jawaban ini menjadi Windows yang akurat?
Ana Betts
Terima kasih @ShawnRakowski, Anda benar - Saya baru saja menguji ini dan properti ikon memang berfungsi pada Windows juga. Saya telah memperbarui jawaban saya untuk mencerminkan ini.
Alex Warren
1
Ini bekerja pada awalnya, tetapi kemudian saya mengirim aplikasi yang dapat didistribusikan ke teman saya dan itu tidak berhasil! Ada ide?
Chet
10
@Nick, Anda harus melakukan sesuatu seperti berikutelectron-packager . YourApplicationName --all --icon "path/to/my/icon.ico"
Mateo
47
Di bawah ini adalah solusi yang saya miliki:
mainWindow = new BrowserWindow({width: 800, height: 600,icon: __dirname + '/Bluetooth.ico'});
Ini sepertinya hanya bekerja untuk pengembangan. Ketika saya menjalankan 'yarn dist', file icns akan diganti dengan yang asli elektron.
Dave
2
@Dave Sebenarnya dia berkata6. Enjoy your icon during *development* :-)
Mia
Baiklah kawan ... Saya tahu ... Tapi perbaikan ini sudah lebih dari 2 tahun ... ;-) Dan btw. Anda harus dapat menggunakan "retasan" ini juga pada build final, karena Anda cukup mengubahnya pada aplikasi dist ... Belum mencoba untuk sementara waktu .. Dan siapa tahu mungkin ada cara resmi, sekarang ... ;-)
Setelah membangun aplikasi, Anda dapat melihat ikon. Solusi ini tidak menampilkan ikon dalam mode pengembang. Saya tidak mengatur ikon di new BrowserWindow().
Perlu diketahui bahwa contoh untuk path file ikon cenderung menganggap bahwa main.js berada di bawah direktori dasar. Jika file tidak ada di direktori dasar aplikasi, spesifikasi jalur harus menjelaskan fakta itu.
Misalnya, jika main.js berada di bawah src / subdirektori, dan ikon di bawah aset / ikon /, spesifikasi lintasan ikon ini akan berfungsi:
postinstall
skrip di proyek Anda yang akan menyalin file .icns di tempatnya di bawah node_modules / secara otomatis.Jawaban:
Mengatur
icon
properti saat membuatBrowserWindow
hanya berpengaruh pada Windows dan Linux.Untuk mengatur ikon pada OS X, Anda dapat menggunakan paket-elektron dan mengatur ikon menggunakan
--icon
sakelar.Ini harus dalam format .icns untuk OS X. Ada ikon konverter online yang dapat membuat file ini dari .png Anda.
sumber
electron-packager . YourApplicationName --all --icon "path/to/my/icon.ico"
Di bawah ini adalah solusi yang saya miliki:
sumber
.icns
tidak dibutuhkan ?Anda dapat melakukannya untuk macOS juga. Oke, tidak melalui kode, tetapi dengan beberapa langkah sederhana:
Sebenarnya itu adalah hal umum yang tidak spesifik untuk elektron. Anda dapat mengubah ikon banyak aplikasi macOS seperti ini.
sumber
6. Enjoy your icon during *development* :-)
Package.json yang diperbarui :
Setelah membangun aplikasi, Anda dapat melihat ikon. Solusi ini tidak menampilkan ikon dalam mode pengembang. Saya tidak mengatur ikon di
new BrowserWindow()
.sumber
Pembuat elektron mendukung ikon
sumber
Jika Anda ingin memperbarui ikon aplikasi di bilah tugas, maka Perbarui berikut di main.js (jika menggunakan naskah lalu main.ts)
__dirname
menunjuk ke direktori root (direktori yang sama denganpackage.json
) aplikasi Anda.sumber
Perlu diketahui bahwa contoh untuk path file ikon cenderung menganggap bahwa main.js berada di bawah direktori dasar. Jika file tidak ada di direktori dasar aplikasi, spesifikasi jalur harus menjelaskan fakta itu.
Misalnya, jika main.js berada di bawah src / subdirektori, dan ikon di bawah aset / ikon /, spesifikasi lintasan ikon ini akan berfungsi:
sumber
pengemas elektron
Mengatur properti ikon saat membuat
BrowserWindow
hanya berpengaruh pada platform Windows dan Linux. Anda harus mengemas .icns untuk maksUntuk mengatur ikon pada OS X menggunakan
electron-packager
, atur ikon menggunakan saklar --icon.Ini harus dalam format .icns untuk OS X. Ada ikon konverter online yang dapat membuat file ini dari .png Anda.
pembangun elektron
Sebagai solusi terbaru, saya menemukan alternatif menggunakan
--icon
sakelar. Inilah yang dapat Anda lakukan.build
di direktori proyek Anda dan letakkan.icns
ikon di direktori sebagai namaicon.icns
.electron-builder --dir
.Anda akan menemukan ikon aplikasi Anda akan secara otomatis diambil dari lokasi direktori dan digunakan untuk aplikasi saat pengemasan.
sumber