1

私は今、ほぼ1時間探していましたが、答えが見つかりませんでした. 現在、カスタム イメージ (WritableBitmap を使用) をグレー スケールまたは 256 色の所定の色のカラースケールで表示するプログラムに取り組んでいます。

画像の入力はバイト配列になります (PixelFormat プロパティを PixelFormats.Gray8 に設定すると正常に動作します) が、カスタム カラー スケールも必要なので、カスタム スケール (グレー用とグレー用) を作成したいと思います。色の場合はそれ以上)。使用する必要があるのは PixelFormat.Indexed8 プロパティだと思いますが、それを使用する方法とカスタムカラーパレットを作成する方法を見つけることができず、作成方法についてインターネットはまったく役に立ちませんでした。

4

1 に答える 1

3

カスタムBitmapPaletteを作成して、新しい に適用できWriteableBitmapます。

var myPalette = new BitmapPalette(new List<Color> 
{ 
    Colors.Red,
    Colors.Blue,
    Colors.Green,
    // ...
});

var writeableBitmap = new WriteableBitmap(
    width, 
    height, 
    96, 
    96, 
    PixelFormats.Indexed8, // Paletted bitmap with 256 colours
    myPalette);

writeableBitmap.WritePixels(...);
于 2012-08-31T10:45:59.427 に答える