2017-01-24 10 views
0

私はelectron-react-boilerplateを使って電子アプリケーション(electron-builderをアプリをパックする)を開発しています。電子ビルダーのアイコンパス/イメージを取得する方法

トレイを作成したいのですが、アイコンのパスまたはネイティブイメージが必要です。質問は電子ビルダーまたは方法(梱包なし)リソースへのディレクトリのアイコンが含まれるように電子ビルダーを教えてからアイコン画像を取得する方法であるので、私は使用することができます。

appIcon = new Tray(iconPath | nativeImage)

答えて

1

まずあなたがelectron-builderを伝える必要があります余分なファイルを出力ビルドにコピーする必要があります。下記のように各OS用のネイティブドライバをコピーしますが、これをあなたのニーズに適応できるはずです。 "to": "resources"は、後でファイルを見つけるために次のコードを使用できることを意味します。

const path = require('path'); 
const imgPath = path.join(process.resourcesPath, 'image.png') 

あなたがメインプロセスにいる場合は、remote一部を省略することができます。そして、あなたが使用できる電子内からそのパスへのアクセスを得るために

"build": { 
... 
"extraFiles": [ 
    { 
    "from": "resources/${os}/drivers", 
    "to": "resources", 
    "filter": [ 
     "**/*" 
    ] 
    } 
], 

。あなたは[process.resourcesPath](https://github.com/electron/electron/blob/master/docs/api/を使用することができます

const nativeImage = require('electron').nativeImage 
let image = nativeImage.createFromPath(imgPath) 
+2

その後、ネイティブイメージを取得するためにnativeImage.createFromPathを使用することができますprocess.md#processresourcespath)リソースディレクトリへのパスを取得する – develar

+0

良いアイデア@develar – Tim

関連する問題