BitmapPalette BitmapPalette BitmapPalette BitmapPalette Class

定義

サポートされているイメージの種類に利用可能なカラー パレットを定義します。Defines the available color palette for a supported image type.

public ref class BitmapPalette sealed : System::Windows::Threading::DispatcherObject
public sealed class BitmapPalette : System.Windows.Threading.DispatcherObject
type BitmapPalette = class
    inherit DispatcherObject
Public NotInheritable Class BitmapPalette
Inherits DispatcherObject
継承

次の例は、ユーザー設定を定義する方法を示しますBitmapPaletteし、それを新しい適用BitmapSourceします。The following example demonstrates how to define a custom BitmapPalette and apply it to a new BitmapSource.

int width = 128;
int height = width;
int stride = width/8;
byte[] pixels = new byte[height*stride];

// Try creating a new image with a custom palette.
List<System.Windows.Media.Color> colors = new List<System.Windows.Media.Color>();
colors.Add(System.Windows.Media.Colors.Red);
colors.Add(System.Windows.Media.Colors.Blue);
colors.Add(System.Windows.Media.Colors.Green);
BitmapPalette myPalette = new BitmapPalette(colors);

// Creates a new empty image with the pre-defined palette

BitmapSource image = BitmapSource.Create(
    width,
    height,
    96,
    96,
    PixelFormats.Indexed1,
    myPalette, 
    pixels, 
    stride);

FileStream stream = new FileStream("empty.tif", FileMode.Create);
TiffBitmapEncoder encoder = new TiffBitmapEncoder();
TextBlock myTextBlock = new TextBlock();
myTextBlock.Text = "Codec Author is: " + encoder.CodecInfo.Author.ToString();
encoder.Frames.Add(BitmapFrame.Create(image));
MessageBox.Show(myPalette.Colors.Count.ToString());
encoder.Save(stream);

Dim width As Integer = 128
Dim height As Integer = width
Dim stride As Integer = CType(width / 8, Integer)
Dim pixels(height * stride) As Byte

' Try creating a new image with a custom palette.
Dim colors As New List(Of System.Windows.Media.Color)()
colors.Add(System.Windows.Media.Colors.Red)
colors.Add(System.Windows.Media.Colors.Blue)
colors.Add(System.Windows.Media.Colors.Green)
Dim myPalette As New BitmapPalette(colors)

' Creates a new empty image with the pre-defined palette
Dim image As BitmapSource = System.Windows.Media.Imaging.BitmapSource.Create(width, height, 96, 96, PixelFormats.Indexed1, myPalette, pixels, stride)
Dim stream As New FileStream("empty.tif", FileMode.Create)
Dim encoder As New TiffBitmapEncoder()
Dim myTextBlock As New TextBlock()
myTextBlock.Text = "Codec Author is: " + encoder.CodecInfo.Author.ToString()
encoder.Frames.Add(BitmapFrame.Create(image))
MessageBox.Show(myPalette.Colors.Count.ToString())
encoder.Save(stream)

次の例は、取得する方法を示します、BitmapPaletteイメージから。The following example demonstrates how to retrieve a BitmapPalette from an image.


// Get the palette from an image
BitmapImage image2 = new BitmapImage();
image2.BeginInit();
image2.UriSource = new Uri("tulipfarm.tif", UriKind.RelativeOrAbsolute);
image2.EndInit();
BitmapPalette myPalette3 = new BitmapPalette(image2, 256);

//Draw the third Image
Image myImage2 = new Image();
myImage2.Source = image2;
myImage2.Stretch = Stretch.None;
myImage2.Margin = new Thickness(20);
' Get the palette from an image
Dim image2 As New BitmapImage()
image2.BeginInit()
image2.UriSource = New Uri("tulipfarm.tif", UriKind.RelativeOrAbsolute)
image2.EndInit()
Dim myPalette3 As New BitmapPalette(image2, 256)

'Draw the third Image
Dim myImage2 As New Image()
myImage2.Source = image2
myImage2.Stretch = Stretch.None
myImage2.Margin = New Thickness(20)

注釈

のみTagged Image File Format (TIFF)Tagged Image File Format (TIFF)グラフィックス インターチェンジ形式 (GIF)Graphics Interchange Format (GIF)イメージ形式は、イメージのパレットをサポートします。Only Tagged Image File Format (TIFF)Tagged Image File Format (TIFF) and グラフィックス インターチェンジ形式 (GIF)Graphics Interchange Format (GIF) image formats support image palettes. その他のイメージの種類を使用して定義するただし、BitmapPaletteします。However, other image types can be used to define a BitmapPalette. 定義しようとして、BitmapPaletteの例外で、サポートされていないビットマップ形式は行われません、指定したBitmapPaletteは単に無視されます。Attempting to define a BitmapPalette for an unsupported bitmap format does not result in an exception; the designated BitmapPalette is simply ignored.

Windows Presentation Foundation (WPF)Windows Presentation Foundation (WPF) カスタム色パレットとによって定義されている定義済みのパレットの両方をサポート、BitmapPalettesクラス。supports both custom color palettes and predefined palettes defined by the BitmapPalettes class.

コンストラクター

BitmapPalette(BitmapSource, Int32) BitmapPalette(BitmapSource, Int32) BitmapPalette(BitmapSource, Int32) BitmapPalette(BitmapSource, Int32)

指定した BitmapSource に基づいて、BitmapPalette クラスの新しいインスタンスを初期化します。Initializes a new instance of the BitmapPalette class based on the specified BitmapSource. 新しい BitmapPalette は、指定した最大色数に限定されます。The new BitmapPalette is limited to a specified maximum color count.

BitmapPalette(IList<Color>) BitmapPalette(IList<Color>) BitmapPalette(IList<Color>) BitmapPalette(IList<Color>)

新しいインスタンスを初期化、BitmapPaletteクラスを指定した色。Initializes a new instance of the BitmapPalette class with the specified colors.

プロパティ

Colors Colors Colors Colors

パレットで定義された色を取得します。Get the colors defined in a palette.

Dispatcher Dispatcher Dispatcher Dispatcher

取得、DispatcherこのDispatcherObjectに関連付けられています。Gets the Dispatcher this DispatcherObject is associated with.

(Inherited from DispatcherObject)

メソッド

CheckAccess() CheckAccess() CheckAccess() CheckAccess()

呼び出し元のスレッドが、これに対するアクセス権を持つかどうかを判断しますDispatcherObjectします。Determines whether the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)
Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)
VerifyAccess() VerifyAccess() VerifyAccess() VerifyAccess()

呼び出し元のスレッドがこのへのアクセスを強制DispatcherObjectします。Enforces that the calling thread has access to this DispatcherObject.

(Inherited from DispatcherObject)

適用対象

こちらもご覧ください