前回はファイルの保存をやりました。今回は読み込みをやることにします。

アイコンを複数のサイズに対応できるファイルとして保存する方法 自作アイコンエディタ(その9)

これで完成!と思っていたら32×32ピクセルのアイコンでない場合、例外が発生してしまいます。

これは指定したファイルから指定したサイズで Icon クラスの新しいインスタンスを初期化するというものですが、指定したサイズと同じものがない場合はサイズが最も近いアイコンが返されます。

ということは、32×32ピクセルのアイコンが存在しない場合、うまくいきません。もっとも普通は32×32ピクセルのアイコンは存在するはずです。そのためミスに気づけなかった。orz

32×32ピクセルのアイコンがない場合は、Graphics.DrawImage メソッドを使って、32×32ピクセルのアイコンをつくる必要があります。

これだけでは面白くないので、他のイメージファイルも読み込めるようにしてしまいましょう。画像ファイルからアイコンを作ることができるようになります。

この画像をアイコン化できるかやってみました。

実行結果。

保存してみるとアイコンファイルも正常に作成されていることが確認できました。