8

これは奇妙な質問のように思えるかもしれません。私は画像の形式を知らないので、先に進んで質問します...

ボタンのグリッドを使用するマインスイーパ ゲーム (さまざまなものにも関連) を作成してから、 を使用してボタンにスプライトを追加していますbackgroundImage。グリッドが 9x9 であれば問題ありません。15x15 では速度が低下し、30x30 では各ボタンが読み込まれていることが目に見えてわかります。

それは私の質問に私を提起します:どの画像形式が最も速くロードされますか? 明らかに、ファイルサイズは読み込み速度に影響しますが、たとえば、gif と同じファイルサイズの jpeg がより速く読み込まれるかどうかを調べています。またはbmp、pngなど。

別のフォーマットを使用してグリッドをより速くロードできるかどうかを確認するために、これを求めています。

ありがとう!

4

4 に答える 4

8

より速く描画できる画像形式が必要です。ピクセル フォーマットがビデオ アダプタの設定と直接一致するものは 1 つしかないため、フォーマットの調整を必要とせずにピクセル データを直接コピーできます。

最近のほとんどのマシンでは、PixelFormat.Format32bppPArgb です。他のすべてのものよりも10倍速く描画されます。

リソースまたはファイルから画像をロードするときは、その形式を取得できません。作成する必要があります。

グリッド内のすべてのセルがコントロールである場合、これでも優れたペイント速度は得られないことに注意してください。特にボタンの場合、透明効果をサポートするため、描画に非常にコストがかかります。1 つの Paint イベント ハンドラーでグリッド全体を描画する場合にのみ、ここで先に進むことができます。フォームのように。

完全に異なるアプローチは、このハックで目に見える遅延を隠すことです。

于 2012-11-01T12:09:37.813 に答える
3

8 ビットの PNG または GIF 形式を使用し、パレットの色数を減らします。PhotoShop などの一部の画像プログラムでは、Web 用に画像を保存したり、画像設定を微調整したりできます。カラー パレットを 256 から 32 などに減らすと、ファイルのサイズが大幅に縮小されます。画像の色が少ないほど、ファイル サイズは小さくなります。

PNG には、「インターレース」と呼ばれる同様の機能があります。この機能をオフにして、完全なイメージをすばやくダウンロードすることをお勧めします。

8 ビットの PNG および GIF 形式では、イメージ ファイルのサイズが大幅に小さくなる可能性があるため、アプリケーション用のグラフィックやイラストを作成するときは、この点に留意してください。色の量を最小限に抑え、写真の代わりにフラットなグラフィックを使用するようにしてください。このようにして、16 色の​​パレットを使用して画像を作成し、ファイル サイズを非常に小さくして高速に読み込むことができます。

よろしくお願いします

于 2012-11-01T12:12:12.120 に答える
1

ボタンをペイントするたびに画像をリロードしていますか? もしそうなら、あなたの問題があります - キャッシュで解決してください。

イメージを元のサイズでペイントしていますか? 実行時のリサンプリングにより、パフォーマンス ヒットが発生する可能性があります。

于 2012-11-01T12:23:40.703 に答える
0

PNGまたはGIFを使用してください。より高速なタイプの画像です

于 2012-11-01T12:29:57.707 に答える