public MessagePanel(ref Direct2DPointers direct2DPointers, SizeU canvasSize, UInt32 backgroundColor) { PanelRectangle = canvasSize; BackgroundColor = backgroundColor; CreateDirect2DCanvas(PanelRectangle, ref direct2DPointers); WipeCanvas(); }
/// <summary> /// Create pointers for IWICBitmap and ID2D1RenderTarget, and set the canvas size /// </summary> /// <param name="canvasSize">Desired bitmap width and height</param> /// <param name="direct2DPointers">An instantiated instance of Direct2DPointers</param> public void CreateDirect2DCanvas(SizeU canvasSize, ref Direct2DPointers direct2DPointers) { Marshal.ThrowExceptionForHR(UnsafeNativeMethods.CreateWICBitmap(ref direct2DPointers, canvasSize.Width, canvasSize.Height, ref Direct2DCanvas)); Marshal.ThrowExceptionForHR(UnsafeNativeMethods.CreateRenderTarget(ref Direct2DCanvas)); }