BitmapSource.Create Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Creates a new BitmapSource that has the specified properties and options.
Overloads
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32) |
Creates a new BitmapSource from an array of pixels. |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32) |
Creates a new BitmapSource from an array of pixels that are stored in unmanaged memory. |
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, Array, Int32)
Creates a new BitmapSource from an array of pixels.
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
Parameters
- pixelWidth
- Int32
The width of the bitmap.
- pixelHeight
- Int32
The height of the bitmap.
- dpiX
- Double
The horizontal dots per inch (dpi) of the bitmap.
- dpiY
- Double
The vertical dots per inch (dpi) of the bitmap.
- pixelFormat
- PixelFormat
The pixel format of the bitmap.
- palette
- BitmapPalette
The palette of the bitmap.
- pixels
- Array
An array of bytes that represents the content of a bitmap image.
- stride
- Int32
The stride of the bitmap.
Returns
The BitmapSource that is created from the specified array of pixels.
Examples
The following example demonstrates how to use this method in order to create 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)
See also
Applies to
Create(Int32, Int32, Double, Double, PixelFormat, BitmapPalette, IntPtr, Int32, Int32)
Creates a new BitmapSource from an array of pixels that are stored in unmanaged memory.
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
Parameters
- pixelWidth
- Int32
The width of the bitmap.
- pixelHeight
- Int32
The height of the bitmap.
- dpiX
- Double
The horizontal dots per inch (dpi) of the bitmap.
- dpiY
- Double
The vertical dots per inch (dpi) of the bitmap.
- pixelFormat
- PixelFormat
The pixel format of the bitmap.
- palette
- BitmapPalette
The palette of the bitmap.
- buffer
-
IntPtr
nativeint
A pointer to the buffer that contains the bitmap data in memory.
- bufferSize
- Int32
The size of the buffer.
- stride
- Int32
The stride of the bitmap.
Returns
A BitmapSource that is created from the array of pixels in unmanaged memory.
- Attributes