CanvasBitmap Class |
Namespace: Microsoft.Graphics.Canvas
public class CanvasBitmap : DependencyObject, ICanvasImage, IGraphicsEffectSource, IDisposable, IDirect3DSurface, ICanvasResourceCreatorWithDpi, ICanvasResourceCreator
The CanvasBitmap type exposes the following members.
Name | Description | |
---|---|---|
AlphaMode | Gets the alpha mode of this bitmap. | |
Bounds | Gets the bounds of the bitmap, in device independent pixels (DIPs). | |
Description | The description of this bitmap's underlying surface. | |
Device | The device associated with this bitmap. | |
Dpi | Gets the dots-per-inch (DPI) of this bitmap. | |
Format | Gets the pixel format of this bitmap. | |
Size | Gets the size of the bitmap, in device independent pixels (DIPs). | |
SizeInPixels | Gets the size of the bitmap, in pixels. |
Name | Description | |
---|---|---|
ConvertDipsToPixels | Converts units from device independent pixels (DIPs) to physical pixels based on the DPI of this bitmap. | |
ConvertPixelsToDips | Converts units from physical pixels to device independent pixels (DIPs) based on the DPI of this bitmap. | |
CopyPixelsFromBitmap(CanvasBitmap) | Copies the entire bitmap specified into this bitmap, at position (0, 0). | |
CopyPixelsFromBitmap(CanvasBitmap, Int32, Int32) | Copies the entire bitmap specified into this bitmap at the point specified. | |
CopyPixelsFromBitmap(CanvasBitmap, Int32, Int32, Int32, Int32, Int32, Int32) | Copies the specified region of a bitmap into this bitmap, at the point specified. | |
CreateFromBytes(ICanvasResourceCreator, Byte, Int32, Int32, DirectXPixelFormat) | Creates a CanvasBitmap from an array of bytes, using the specified pixel width/height, premultiplied alpha and default (96) DPI. | |
CreateFromBytes(ICanvasResourceCreator, IBuffer, Int32, Int32, DirectXPixelFormat) | Creates a CanvasBitmap from the bytes of the specified buffer, using the specified pixel width/height, premultiplied alpha and default (96) DPI. | |
CreateFromBytes(ICanvasResourceCreator, Byte, Int32, Int32, DirectXPixelFormat, Single) | Creates a CanvasBitmap from an array of bytes, using the specified pixel width/height, specified DPI, and premultiplied alpha. | |
CreateFromBytes(ICanvasResourceCreator, IBuffer, Int32, Int32, DirectXPixelFormat, Single) | Creates a CanvasBitmap from the bytes of the specified buffer, using the specified pixel width/height, specified DPI, and premultiplied alpha. | |
CreateFromBytes(ICanvasResourceCreator, Byte, Int32, Int32, DirectXPixelFormat, Single, CanvasAlphaMode) | Creates a CanvasBitmap from an array of bytes, using the specified pixel width/height, DPI and alpha behavior. | |
CreateFromBytes(ICanvasResourceCreator, IBuffer, Int32, Int32, DirectXPixelFormat, Single, CanvasAlphaMode) | Creates a CanvasBitmap from the bytes of the specified buffer, using the specified pixel width/height, DPI and alpha behavior. | |
CreateFromColors(ICanvasResourceCreator, Color, Int32, Int32) | Creates a CanvasBitmap from an array of colors, using the specified pixel width/height, premultiplied alpha and default (96) DPI. | |
CreateFromColors(ICanvasResourceCreator, Color, Int32, Int32, Single) | Creates a CanvasBitmap from an array of colors, using the specified pixel width/height, specified DPI, and premultiplied alpha. | |
CreateFromColors(ICanvasResourceCreator, Color, Int32, Int32, Single, CanvasAlphaMode) | Creates a CanvasBitmap from an array of colors, using the specified pixel width/height, DPI and alpha behavior. | |
CreateFromDirect3D11Surface(ICanvasResourceCreator, IDirect3DSurface) | Creates a CanvasBitmap from an existing Direct3D graphics surface. | |
CreateFromDirect3D11Surface(ICanvasResourceCreator, IDirect3DSurface, Single) | Creates a CanvasBitmap from an existing Direct3D graphics surface. | |
CreateFromDirect3D11Surface(ICanvasResourceCreator, IDirect3DSurface, Single, CanvasAlphaMode) | Creates a CanvasBitmap from an existing Direct3D graphics surface, using the specified DPI and alpha behavior. | |
CreateFromSoftwareBitmap | Creates a CanvasBitmap from a SoftwareBitmap. | |
Dispose | Releases all resources used by the CanvasBitmap. | |
GetBounds(ICanvasResourceCreator) | Retrieves the bounds of this CanvasBitmap. | |
GetBounds(ICanvasResourceCreator, Matrix3x2) | Retrieves the bounds of this CanvasBitmap. | |
GetPixelBytes | Returns an array of raw byte data for the entire bitmap. | |
GetPixelBytes(IBuffer) | Copies raw byte data for the entire bitmap into the specified buffer. | |
GetPixelBytes(Int32, Int32, Int32, Int32) | Returns an array of raw byte data for a subregion of the bitmap. | |
GetPixelBytes(IBuffer, Int32, Int32, Int32, Int32) | Copies raw byte data for a subregion of the bitmap into the specified buffer. | |
GetPixelColors | Returns an array of color data for the entire bitmap. | |
GetPixelColors(Int32, Int32, Int32, Int32) | Returns an array of color data for a subregion of the bitmap. | |
LoadAsync(ICanvasResourceCreator, String) | Loads a bitmap from an image file (jpeg, png, etc.) | |
LoadAsync(ICanvasResourceCreator, Uri) | Loads a bitmap from an image file (jpeg, png, etc.) located at a URI. | |
LoadAsync(ICanvasResourceCreator, IRandomAccessStream) | Loads a bitmap from a stream. | |
LoadAsync(ICanvasResourceCreator, String, Single) | Loads a bitmap from an image file (jpeg, png, etc.), and assigns it the specified DPI. | |
LoadAsync(ICanvasResourceCreator, Uri, Single) | Loads a bitmap from an image file (jpeg, png, etc.) located at a URI, and assigns it the specified DPI. | |
LoadAsync(ICanvasResourceCreator, IRandomAccessStream, Single) | Loads a bitmap from a stream, and assigns it the specified alpha behavior. | |
LoadAsync(ICanvasResourceCreator, String, Single, CanvasAlphaMode) | Loads a bitmap from an image file (jpeg, png, etc.), and assigns it the specified DPI and alpha behavior. | |
LoadAsync(ICanvasResourceCreator, Uri, Single, CanvasAlphaMode) | Loads a bitmap from an image file (jpeg, png, etc.) located at a URI, and assigns it the specified DPI and alpha behavior. | |
LoadAsync(ICanvasResourceCreator, IRandomAccessStream, Single, CanvasAlphaMode) | Loads a bitmap from a stream, and assigns it the specified DPI and alpha behavior. | |
SaveAsync(String) | Saves the entire bitmap to a file with the specified file name, using a default quality level of 0.9 and CanvasBitmapFileFormat.Auto. | |
SaveAsync(String, CanvasBitmapFileFormat) | Saves the entire bitmap to a file with the specified file name and file format, and a default quality level of 0.9. | |
SaveAsync(IRandomAccessStream, CanvasBitmapFileFormat) | Saves the entire bitmap to the specified stream with the specified file format, using a default quality level of 0.9. | |
SaveAsync(String, CanvasBitmapFileFormat, Single) | Saves the entire bitmap to a file with the specified file name and file format, and quality level. | |
SaveAsync(IRandomAccessStream, CanvasBitmapFileFormat, Single) | Saves the entire bitmap to the specified stream with the specified file format and quality level. | |
SetPixelBytes(Byte) | Sets the byte data of the bitmap from the specified array. | |
SetPixelBytes(IBuffer) | Sets the byte data of the bitmap from the specified buffer. | |
SetPixelBytes(Byte, Int32, Int32, Int32, Int32) | Sets the byte data of a subregion of the bitmap. | |
SetPixelBytes(IBuffer, Int32, Int32, Int32, Int32) | Sets the byte data of a subregion of the bitmap from the specified buffer. | |
SetPixelColors(Color) | Sets the color data of the bitmap from the specified array. | |
SetPixelColors(Color, Int32, Int32, Int32, Int32) | Sets the color data for a subregion of the bitmap from the specified array. |
When using Direct2D interop, this Win2D class corresponds to an ID2D1Bitmap1 without the D2D1_BITMAP_OPTIONS_TARGET flag.
To load and draw a bitmap, first add a CanvasControl to your XAML page.
Add the image files you want to display (png, jpeg, etc.) to your Visual Studio project, and make sure their Build Action is set to Content.
In the page implementation class (eg. MainPage.xaml.cs), declare fields to hold the bitmaps:
CanvasBitmap cat, mouse;
Use the CreateResources event to asynchronously load the bitmaps:
void myWidget_CreateResources(CanvasControl sender, object args) { args.TrackAsyncAction(CreateResourcesAsync(sender).AsAsyncAction()); } async Task CreateResourcesAsync(CanvasControl sender) { cat = await CanvasBitmap.LoadAsync(sender, "ShawnsCat.jpg"); mouse = await CanvasBitmap.LoadAsync(sender, "Mouse.png"); }
Use the Draw event to display them:
void myWidget_Draw(CanvasControl sender, CanvasDrawEventArgs args) { args.DrawingSession.DrawImage(cat, 42, 42); args.DrawingSession.DrawImage(mouse, 123, 45); }