2016-04-29 17 views
0

私の質問にはhereと似た質問がありますが、私の質問には答えられません。ALT-TABアプリケーションアイコン48x48トゥルーカラーが.ICOファイルに含まれている場合ピクセル化

私は3つのアイコンを含む単一.icoファイル有する:

  • 16×16 4ビット(16色)
  • 32×32 4ビット(16色)
  • 48×48 24ビット(トゥルーをALT-TABのための32×32をthis articleがそう言ったので);色)

は、私が唯一のアプリケーションのタイトルバーとタスクバーのための最初の2(16×16のための明確な必要性を持っているが、その中にこれら三つを置くことにしました。

Windowsではアイコンのサイズに制限はありませんが、一般的なサイズは16,32,48ピクセルの正方形です。この理由のために、開発者は、それらのアイコンリソースにおける次のサイズおよび色深度の最小値を含むように奨励される:

16×16 16色

32×32 16色

48×48 256色

しかし、私が見るように、256色(8ビットカラー)の画像の代わりにTrue Color(24ビットカラー)を48x48として追加するとエラーが発生しました。

上記の.ICOファイルを使用すると、48x48が縮小されて32x32の代わりに使用されたように、私のALT-TABアイコンがピクセル化されます。

16x16および32x32イメージのみを含むように.ICOファイルを変更した場合、または推奨される8ビットカラーの48x48イメージを持つ場合、ALT-TABは正常に表示され、32x32イメージを正しく使用します。

私の質問は、真のカラー48x48サイズを含むと、ALT-TABディスプレイに問題が生じるのはなぜですか?

P.S. StackOverflowであなたの質問を書いて、あなた自身のエラー(色の数が間違っています!)を見つけられるようなことはありませんが、なぜTrueカラー画像がこの現象を引き起こすのか不思議です。

+0

どのWindowsのバージョンですか? – Nyerguds

+0

私はWindows 8.1を使用しています –

+0

途中で書かれた記事は間違っていました。少なくとも、あまり単純化されていない。 Windows 95はカスタムのDPI設定をサポートしています.DPIをデフォルトの96 DPI設定(120 DPIなど)以上に増やした場合、シェルはより大きなアイコンを使用することを好みます。 256色(8ビット)の深さの48x48のアイコンは、すばらしい大型の魅力的なSVGAディスプレイを持つユーザーに含めるのが一般的でした。現代版のWindowsでは、Nyergudsが指摘したように、アドバイスはさらに間違っています。シェルは利用可能なアイコンの最大バージョンを使用し、それをダウンスケールします(「LoadIconWithScaleDown' API、Vista以降利用可能です)。 –

答えて

1

「お勧め」は、のドキュメントです。それは時代遅れのものではありません。それはWin95世代です。 完全には廃止されました。

alt-tabの問題では、48x48のバージョンが使用されていると私は考えています。色の質が環境に適しているからです。ハイカラーのアイコンは滑らかなフェードで透明になります。

アイコンの数に制限はありません。同じ次元でさえありません。あなたは完全に32x32の256色のアイコンをの32x32の真のカラー画像に追加することができます。それは与えられた状況に最も適したアイコンを選ぶだけです。

だからそうです。答えは簡単なようです。その下位互換性を実際に望む場合は、すべてのアイコンサイズをと入力してください。真の色と256色の両方に対応しています。しかし、私が見る限りでは、それを気にすることはまったくありません。それらをすべて真の色として加えてください。誰もWindows 95を使用していませんし、ファイルのサイズも色の制限も今のところ問題にはなりません。

最近、私はもはや実際に自分のアイコンを作っているのをやめます。アイコンが必要な場合は、256x256ハイカラーのPNG画像として取得し、ConvertICOのようなサイトを生成するオンラインアイコンにフィードするだけです。高品質のダウンスケーリングアルゴリズムを使用して、すべての小さなバージョンを自動的に生成します。しかし、これらも8ビットまたは4ビットのバージョンを入れても構いません。これは、アイコンが古くからのXP以前のシステムでよく見えることを確認しない限り、必要ではありません。

+0

8ビットアイコンも重要です。セーフモードや正しいビデオドライバがない状態で実行している場合を考えてみましょう。今、あなたのアプリがこのような状況で利用可能/使用可能である必要がない場合は、大丈夫だと思うし、色深度の低いアイコンを省略することもできます。しかし、それを含めるために何かを傷つけることはありません。そして、それは怠惰なやり方で(大きな画像からすべてのアイコンをダウンサンプリングして)動作しますが、最大の結果は得られません。 16×16アイコン*常に*識別可能にするために手で調整する必要があります。また、32x32のアイコンを微調整するのに役立ちます。 –

+0

さて、はい、私は各サイズの複数のタイプを追加することを提案しました(16色を除いて、アイコンを不必要に見せかけるだけです)。ダウンサンプリングに関しては、ConvertICOは16x16のバージョンでも常に素晴らしい結果を得ました。また、私は正直なところ、現在どのようなアイコンを編集するのか分からない。 – Nyerguds

+0

私はVisual Studio ICOエディタを使ってアイコンを編集しました。私は、私が手作業で作成したときに、私が使っていたさまざまな場所でもっとよく見えるアイコンを持っていると思っていました。私はそれらを非常に頻繁にしない(または私は確信しているすべてのことについてもっと知識があっただろう)ので、そうするのは難しいことではありませんでした。 –

関連する問題