2

私の tif ファイルは 8 bpp でインデックス化されており、カラーマップと共に保存されています。

C# のファイルからそのカラーマップを復元する方法はありますか?

デフォルトでは、picturebox は、左端と右端が 0 と 255 を表すように、このようにカラーマップを自動的に表示します。

ここに画像の説明を入力

無駄にインターネット中を検索しました。

これを行う方法がない場合、インデックス付きの 8 bpp 画像のピクセルの色をどのように決定できますか?

4

1 に答える 1

2

カラーマップを編集する場合は、画像のパレットを変更するだけです。

System.Drawing.Image image = Image.FromFile(@"Q:\my_image.tif");
System.Drawing.Imaging.ColorPalette palette = image.Palette;
//...palette.Entries is simply an array of System.Drawing.Color, modify to suit

//crucial step - palette was retrieved as a copy, so
//it is necessary to store the copy back to the image
image.Palette = palette;

画像をtiffとして保存し直すと、変更されたパレットがそれに合わせて表示されます。

于 2012-09-20T02:42:22.947 に答える