当前位置: 首页>>代码示例>>C#>>正文


C# CALayer.RenderInContext方法代码示例

本文整理汇总了C#中CALayer.RenderInContext方法的典型用法代码示例。如果您正苦于以下问题:C# CALayer.RenderInContext方法的具体用法?C# CALayer.RenderInContext怎么用?C# CALayer.RenderInContext使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CALayer的用法示例。


在下文中一共展示了CALayer.RenderInContext方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: CreateNavigationBarShadowImage

        private UIImage CreateNavigationBarShadowImage()
        {
            // Create the border
              var border = new CALayer();
              border.Frame = new RectangleF(0, 0, 1, 1);
              border.BackgroundColor = PXNConstants.BRAND_BORDER.CGColor;

              // Init context
              UIGraphics.BeginImageContextWithOptions(new SizeF(1f, 0.5f), true, 0f);

              // Render
              border.RenderInContext(UIGraphics.GetCurrentContext());
              var image = UIGraphics.GetImageFromCurrentImageContext();

              // End context
              UIGraphics.EndImageContext();

              return image;
        }
开发者ID:valryon,项目名称:super-koikoukesse,代码行数:19,代码来源:PXNAppearance.cs

示例2: Draw

            public override void Draw(RectangleF rect)
            {
                var fontSize = BadgeView.fontSize;
                var text = new NSString (Text);
                var numberSize = text.StringSize (UIFont.BoldSystemFontOfSize (fontSize));
                var radius = Radius;

                var bounds = new RectangleF (PointF.Empty, new SizeF (numberSize.Width + 12f, 18f));
                UIColor color;
                if (Parent.SelectionStyle != UITableViewCellSelectionStyle.None && (Parent.Highlighted || Parent.Selected)) {
                    color = HighlightColor;
                } else {
                    color = Color;
                }

                bounds.X = (bounds.Width - numberSize.Width) / 2f + .5f;
                bounds.Y += 2f;

                CALayer badge = new CALayer ();
                badge.Frame = rect;

                var imageSize = badge.Frame.Size;

                // Render the image @x2 for retina people
                if (UIScreen.MainScreen.Scale == 2) {
                    imageSize = new SizeF (imageSize.Width * 2, imageSize.Height * 2);
                    badge.Frame = new RectangleF (badge.Frame.Location, new SizeF (
                        badge.Frame.Width * 2, badge.Frame.Height * 2));

                    fontSize *= 2;
                    bounds.X = ((bounds.Width * 2) - (numberSize.Width * 2)) / 2f + 1;
                    bounds.Y += 3;
                    bounds.Width *= 2;
                    radius *= 2;
                }

                badge.BackgroundColor = color.CGColor;
                badge.CornerRadius = radius;

                UIGraphics.BeginImageContext (imageSize);
                var context = UIGraphics.GetCurrentContext ();

                context.SaveState ();
                badge.RenderInContext (context);
                context.RestoreState ();

                context.SetBlendMode (CGBlendMode.Clear);
                text.DrawString (bounds, UIFont.BoldSystemFontOfSize (fontSize), UILineBreakMode.Clip);
                context.SetBlendMode (CGBlendMode.Normal);

                var outputImage = UIGraphics.GetImageFromCurrentImageContext ();
                UIGraphics.EndImageContext ();

                outputImage.Draw (rect);
                if (Parent.SelectionStyle == UITableViewCellSelectionStyle.None && (Parent.Highlighted || Parent.Selected) && Shadow) {
                    Layer.CornerRadius = radius;
                    Layer.ShadowOffset = new SizeF (0f, 1f);
                    Layer.ShadowRadius = 1f;
                    Layer.ShadowOpacity = .8f;
                } else {
                    Layer.CornerRadius = radius;
                    Layer.ShadowOffset = SizeF.Empty;
                    Layer.ShadowRadius = 0f;
                    Layer.ShadowOpacity = 0f;
                }
            }
开发者ID:daveclarke,项目名称:monotouch-element-pack,代码行数:66,代码来源:RowBadgeElement.cs

示例3: ImageFromLayer

		public static UIImage ImageFromLayer(CALayer layer)
		{
			UIGraphics.BeginImageContext(layer.Frame.Size);
			layer.RenderInContext(UIGraphics.GetCurrentContext());
			UIImage outputImage = UIGraphics.GetImageFromCurrentImageContext();
		  	UIGraphics.EndImageContext();
		  	return outputImage;
		}
开发者ID:modulexcite,项目名称:artapp,代码行数:8,代码来源:ImageHelper.cs


注:本文中的CALayer.RenderInContext方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。