SoftwareBitmap Class
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.
Represents an uncompressed bitmap.
public ref class SoftwareBitmap sealed : IClosable
/// [Windows.Foundation.Metadata.Activatable(Windows.Graphics.Imaging.ISoftwareBitmapFactory, 65536, Windows.Foundation.UniversalApiContract)]
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.GCPressure]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class SoftwareBitmap final : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.GCPressure]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
/// [Windows.Foundation.Metadata.Activatable(Windows.Graphics.Imaging.ISoftwareBitmapFactory, 65536, "Windows.Foundation.UniversalApiContract")]
class SoftwareBitmap final : IClosable
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Graphics.Imaging.ISoftwareBitmapFactory), 65536, typeof(Windows.Foundation.UniversalApiContract))]
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.GCPressure]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class SoftwareBitmap : System.IDisposable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.GCPressure]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
[Windows.Foundation.Metadata.Activatable(typeof(Windows.Graphics.Imaging.ISoftwareBitmapFactory), 65536, "Windows.Foundation.UniversalApiContract")]
public sealed class SoftwareBitmap : System.IDisposable
function SoftwareBitmap(format, width, height, alpha)
Public NotInheritable Class SoftwareBitmap
Implements IDisposable
- Inheritance
- Attributes
- Implements
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v1.0)
|
Examples
Sample applications that use this class include the Camera frames sample.
For a code example showing how to access pixel data, see the WriteableBitmap.PixelBuffer property (also see CopyToBuffer, and CopyFromBuffer).
Remarks
This class provides a representation of a bitmap that makes it easy to use with different imaging APIs. Use GetSoftwareBitmapAsync to create a SoftwareBitmap from a stream resource such as an image file.
Use CopyToBuffer and CopyFromBuffer to copy pixel data back and forth between a SoftwareBitmap and the PixelBuffer of a WriteableBitmap. Use CreateCopyFromSurfaceAsync to create a SoftwareBitmap from an IDirect3DSurface. Use ISoftwareBitmapNativeFactory::CreateFromMF2DBuffer2 to create a SoftwareBitmap from an IMF2DBuffer2. Use ISoftwareBitmapNativeFactory::CreateFromIWICBitmap to create a SoftwareBitmap from an IWICBitmap.
Constructors
SoftwareBitmap(BitmapPixelFormat, Int32, Int32, BitmapAlphaMode) |
Initializes a new instance of the SoftwareBitmap class. |
SoftwareBitmap(BitmapPixelFormat, Int32, Int32) |
Initializes a new instance of the SoftwareBitmap class. |
Properties
BitmapAlphaMode |
Gets the alpha mode of the software bitmap. |
BitmapPixelFormat |
Gets the pixel format of the software bitmap. |
DpiX |
Gets or sets the dots per inch of the software bitmap in the X direction. |
DpiY |
Gets or sets the dots per inch of the software bitmap in the Y direction. |
IsReadOnly |
Gets a value indicating whether the software bitmap can be modified. |
PixelHeight |
Gets the height of the software bitmap, in pixels. |
PixelWidth |
Gets the width of the software bitmap, in pixels. |
Methods
Close() |
Disposes of the object and associated resources. |
Convert(SoftwareBitmap, BitmapPixelFormat, BitmapAlphaMode) |
Converts an existing SoftwareBitmap to a SoftwareBitmap with a different pixel format or alpha mode. |
Convert(SoftwareBitmap, BitmapPixelFormat) |
Converts an existing SoftwareBitmap to a SoftwareBitmap with a different pixel format. |
Copy(SoftwareBitmap) |
Creates a copy of the provided SoftwareBitmap object. |
CopyFromBuffer(IBuffer) |
Copies the pixel data from an IBuffer into the SoftwareBitmap. |
CopyTo(SoftwareBitmap) |
Copies the current SoftwareBitmap into the provided SoftwareBitmap object. |
CopyToBuffer(IBuffer) |
Copies the software bitmap pixel data into the specified IBuffer. |
CreateCopyFromBuffer(IBuffer, BitmapPixelFormat, Int32, Int32, BitmapAlphaMode) |
Creates a new SoftwareBitmap by performing a deep copy of the provided buffer. Modifications to the data in the new SoftwareBitmap will not effect the buffer from which it was created. |
CreateCopyFromBuffer(IBuffer, BitmapPixelFormat, Int32, Int32) |
Creates a new SoftwareBitmap by performing a deep copy of the provided buffer. Modifications to the data in the new SoftwareBitmap will not effect the buffer from which it was created. |
CreateCopyFromSurfaceAsync(IDirect3DSurface, BitmapAlphaMode) |
Asynchronously creates a new SoftwareBitmap by performing a deep copy of the provided IDirect3DSurface. Modifications to the data in the new SoftwareBitmap will not effect the surface from which it was created. |
CreateCopyFromSurfaceAsync(IDirect3DSurface) |
Asynchronously creates a new SoftwareBitmap by performing a deep copy of the provided IDirect3DSurface. Modifications to the data in the new SoftwareBitmap will not effect the surface from which it was created. |
Dispose() |
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. |
GetReadOnlyView() |
Gets a read-only representation of the SoftwareBitmap object. |
LockBuffer(BitmapBufferAccessMode) |
Gets a BitmapBuffer object that allows you to operate directly on the software bitmap's pixel data. |