本文整理汇总了C#中CGBitmapContext.SaveState方法的典型用法代码示例。如果您正苦于以下问题:C# CGBitmapContext.SaveState方法的具体用法?C# CGBitmapContext.SaveState怎么用?C# CGBitmapContext.SaveState使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CGBitmapContext
的用法示例。
在下文中一共展示了CGBitmapContext.SaveState方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DrawScreen
protected void DrawScreen ()
{
// create our offscreen bitmap context
// size
CGSize bitmapSize = new CGSize (imageView.Frame.Size);
using (CGBitmapContext context = new CGBitmapContext (IntPtr.Zero, (int)bitmapSize.Width, (int)bitmapSize.Height, 8, (int)(4 * bitmapSize.Width), CGColorSpace.CreateDeviceRGB (), CGImageAlphaInfo.PremultipliedFirst)) {
// save the state of the context while we change the CTM
context.SaveState ();
// draw our circle
context.SetFillColor (1, 0, 0, 1);
context.TranslateCTM (currentLocation.X, currentLocation.Y);
context.RotateCTM (currentRotation);
context.ScaleCTM (currentScale, currentScale);
context.FillRect (new CGRect (-10, -10, 20, 20));
// restore our transformations
context.RestoreState ();
// draw our coordinates for reference
DrawCoordinateSpace (context);
// output the drawing to the view
imageView.Image = UIImage.FromImage (context.ToImage ());
}
}
示例2: ViewDidLoad
public override void ViewDidLoad ()
{
base.ViewDidLoad ();
// set the background color of the view to white
View.BackgroundColor = UIColor.White;
// instantiate a new image view that takes up the whole screen and add it to
// the view hierarchy
RectangleF imageViewFrame = new RectangleF (0, -NavigationController.NavigationBar.Frame.Height, View.Frame.Width, View.Frame.Height);
imageView = new UIImageView (imageViewFrame);
View.AddSubview (imageView);
// create our offscreen bitmap context
// size
SizeF bitmapSize = new SizeF (View.Frame.Size);
using (CGBitmapContext context = new CGBitmapContext (IntPtr.Zero, (int)bitmapSize.Width, (int)bitmapSize.Height, 8, (int)(4 * bitmapSize.Width), CGColorSpace.CreateDeviceRGB (), CGImageAlphaInfo.PremultipliedFirst)) {
//==== create a grayscale shadow
// 1) save graphics state
context.SaveState ();
// 2) set shadow context for offset and blur
context.SetShadow (new SizeF (10, -10), 15);
// 3) perform your drawing operation
context.SetFillColor (.3f, .3f, .9f, 1);
context.FillRect (new RectangleF (100, 600, 300, 250));
// 4) restore the graphics state
context.RestoreState ();
//==== create a color shadow
// 1) save graphics state
context.SaveState ();
// 2) set shadow context for offset and blur
context.SetShadowWithColor(new SizeF (15, -15), 10, UIColor.Blue.CGColor);
// 3) perform your drawing operation
context.SelectFont ("Helvetica-Bold", 40, CGTextEncoding.MacRoman);
context.SetTextDrawingMode (CGTextDrawingMode.Fill);
string text = "Shadows are fun and easy!";
context.ShowTextAtPoint (150, 200, text, text.Length);
// 4) restore the graphics state
context.RestoreState ();
// output the drawing to the view
imageView.Image = UIImage.FromImage (context.ToImage ());
}
}