BitmapSource.Create メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
指定したプロパティおよびオプションを持つ新しい BitmapSource を作成します。
オーバーロード
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32) |
ピクセル配列から新しい BitmapSource を作成します。 |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32) |
アンマネージ メモリに格納されているピクセル配列から新しい BitmapSource を作成します。 |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32)
ピクセル配列から新しい BitmapSource を作成します。
public:
static System::Windows::Media::Imaging::BitmapSource ^ Create(int pixelWidth, int pixelHeight, double dpiX, double dpiY, System::Windows::Media::PixelFormat pixelFormat, System::Windows::Media::Imaging::BitmapPalette ^ palette, Array ^ pixels, int stride);
public static System.Windows.Media.Imaging.BitmapSource Create (int pixelWidth, int pixelHeight, double dpiX, double dpiY, System.Windows.Media.PixelFormat pixelFormat, System.Windows.Media.Imaging.BitmapPalette palette, Array pixels, int stride);
static member Create : int * int * double * double * System.Windows.Media.PixelFormat * System.Windows.Media.Imaging.BitmapPalette * Array * int -> System.Windows.Media.Imaging.BitmapSource
Public Shared Function Create (pixelWidth As Integer, pixelHeight As Integer, dpiX As Double, dpiY As Double, pixelFormat As PixelFormat, palette As BitmapPalette, pixels As Array, stride As Integer) As BitmapSource
パラメーター
- pixelWidth
- Int32
ビットマップの幅。
- pixelHeight
- Int32
ビットマップの高さ。
- dpiX
- Double
ビットマップの 1 インチあたりの水平方向のドット (dpi)。
- dpiY
- Double
ビットマップの 1 インチあたりの垂直ドット数 (dpi)。
- pixelFormat
- PixelFormat
ビットマップのピクセル形式。
- palette
- BitmapPalette
ビットマップのパレット。
- pixels
- Array
ビットマップ イメージのコンテンツを表すバイト配列。
- stride
- Int32
ビットマップのストライド。
戻り値
指定したピクセル配列から作成された BitmapSource。
例
次の例では、このメソッドを使用して新しい 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)
こちらもご覧ください
適用対象
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32)
アンマネージ メモリに格納されているピクセル配列から新しい BitmapSource を作成します。
public:
static System::Windows::Media::Imaging::BitmapSource ^ Create(int pixelWidth, int pixelHeight, double dpiX, double dpiY, System::Windows::Media::PixelFormat pixelFormat, System::Windows::Media::Imaging::BitmapPalette ^ palette, IntPtr buffer, int bufferSize, int stride);
[System.Security.SecurityCritical]
public static System.Windows.Media.Imaging.BitmapSource Create (int pixelWidth, int pixelHeight, double dpiX, double dpiY, System.Windows.Media.PixelFormat pixelFormat, System.Windows.Media.Imaging.BitmapPalette palette, IntPtr buffer, int bufferSize, int stride);
public static System.Windows.Media.Imaging.BitmapSource Create (int pixelWidth, int pixelHeight, double dpiX, double dpiY, System.Windows.Media.PixelFormat pixelFormat, System.Windows.Media.Imaging.BitmapPalette palette, IntPtr buffer, int bufferSize, int stride);
[<System.Security.SecurityCritical>]
static member Create : int * int * double * double * System.Windows.Media.PixelFormat * System.Windows.Media.Imaging.BitmapPalette * nativeint * int * int -> System.Windows.Media.Imaging.BitmapSource
static member Create : int * int * double * double * System.Windows.Media.PixelFormat * System.Windows.Media.Imaging.BitmapPalette * nativeint * int * int -> System.Windows.Media.Imaging.BitmapSource
Public Shared Function Create (pixelWidth As Integer, pixelHeight As Integer, dpiX As Double, dpiY As Double, pixelFormat As PixelFormat, palette As BitmapPalette, buffer As IntPtr, bufferSize As Integer, stride As Integer) As BitmapSource
パラメーター
- pixelWidth
- Int32
ビットマップの幅。
- pixelHeight
- Int32
ビットマップの高さ。
- dpiX
- Double
ビットマップの 1 インチあたりの水平方向のドット (dpi)。
- dpiY
- Double
ビットマップの 1 インチあたりの垂直ドット数 (dpi)。
- pixelFormat
- PixelFormat
ビットマップのピクセル形式。
- palette
- BitmapPalette
ビットマップのパレット。
- buffer
-
IntPtr
nativeint
メモリ内のビットマップ データを含むバッファーへのポインター。
- bufferSize
- Int32
バッファーのサイズ。
- stride
- Int32
ビットマップのストライド。
戻り値
アンマネージ メモリ内のピクセル配列から作成された BitmapSource。
- 属性