Exemplo n.º 1
0
        public override void DrawRect(CGRect area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            this.Add(placeHolderLabel);
            //创建路径
            UIBezierPath leftPath = new UIBezierPath();

            //起点
            leftPath.MoveTo(new CGPoint(0, this.Bounds.Size.Height));

            //画第一条线
            leftPath.AddLineTo(new CGPoint(0, this.Bounds.Size.Height));

            //画第二条线
            leftPath.AddLineTo(new CGPoint(this.Bounds.Size.Width, this.Bounds.Size.Height));

            //设置图层的属性
            leftLayer.Path        = leftPath.CGPath;                  //动画路径
            leftLayer.StrokeColor = new CGColor(1f, 1f, 1f);;         //外边框颜色
            leftLayer.FillColor   = null;                             //不设置路径颜色填充

            leftLayer.BorderWidth = 3.0f;                             //图层边框
            leftLayer.LineCap     = new NSString("kCALineCapRound");  //线头样式为圆形
            leftLayer.LineJoin    = new NSString("kCALineJoinRound"); //拐角样式为圆角
                                                                      //    leftLayer.frame=CGRectMake(0, 50, 200, 1);
            leftLayer.BorderColor = UIColor.Black.CGColor;            //边框颜色


            this.Layer.AddSublayer(leftLayer);
        }
		public override void DrawRect (System.Drawing.RectangleF area, UIViewPrintFormatter formatter)
		{
			base.DrawRect (area, formatter);
			CGContext context = UIGraphics.GetCurrentContext ();

			UIColor shadow;
			shadow = UIColor.Clear;

			UIColor chevronColor = this.Color;
			SizeF shadowOffset = new SizeF (0.1F, 1.1F);
			Single shadowBlurRadius = 0F;

			RectangleF frame = new RectangleF (this.Bounds.X, this.Bounds.Y, this.Bounds.Width, this.Bounds.Height);

			UIBezierPath chevronPath = new UIBezierPath ();
			chevronPath.MoveTo (new PointF (frame.GetMinX () + 0.22000F * frame.Width, frame.GetMinY () + 0.01667F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.98000F * frame.Width, frame.GetMinY() + 0.48333F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.22000F * frame.Width, frame.GetMinY() + 0.98333F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.02000F * frame.Width, frame.GetMinY() + 0.81667F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.54000F * frame.Width, frame.GetMinY() + 0.48333F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.02000F * frame.Width, frame.GetMinY() + 0.15000F * frame.Height));
			chevronPath.AddLineTo (new PointF (frame.GetMinX() + 0.22000F * frame.Width, frame.GetMinY() + 0.01667F * frame.Height));
			chevronPath.ClosePath ();
			context.SaveState ();
			context.SetShadowWithColor (shadowOffset, shadowBlurRadius, shadow.CGColor);
			chevronColor.SetFill ();
			chevronPath.Fill ();
			context.RestoreState ();
		}
        public override void DrawRect(System.Drawing.RectangleF area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);
            CGContext context = UIGraphics.GetCurrentContext();

            UIColor shadow;

            shadow = UIColor.Clear;

            UIColor chevronColor     = this.Color;
            SizeF   shadowOffset     = new SizeF(0.1F, 1.1F);
            Single  shadowBlurRadius = 0F;

            RectangleF frame = new RectangleF(this.Bounds.X, this.Bounds.Y, this.Bounds.Width, this.Bounds.Height);

            UIBezierPath chevronPath = new UIBezierPath();

            chevronPath.MoveTo(new PointF(frame.GetMinX() + 0.22000F * frame.Width, frame.GetMinY() + 0.01667F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.98000F * frame.Width, frame.GetMinY() + 0.48333F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.22000F * frame.Width, frame.GetMinY() + 0.98333F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.02000F * frame.Width, frame.GetMinY() + 0.81667F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.54000F * frame.Width, frame.GetMinY() + 0.48333F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.02000F * frame.Width, frame.GetMinY() + 0.15000F * frame.Height));
            chevronPath.AddLineTo(new PointF(frame.GetMinX() + 0.22000F * frame.Width, frame.GetMinY() + 0.01667F * frame.Height));
            chevronPath.ClosePath();
            context.SaveState();
            context.SetShadowWithColor(shadowOffset, shadowBlurRadius, shadow.CGColor);
            chevronColor.SetFill();
            chevronPath.Fill();
            context.RestoreState();
        }
Exemplo n.º 4
0
        public static NSMutableData CreatePdfFile(this WebKit.WKWebView webView, UIViewPrintFormatter printFormatter)
        {
            var renderer = new PdfRenderer();

            renderer.AddPrintFormatter(printFormatter, 0);
            // Letter = 8.5" * 72 x 11" * 72
            // Inset = .5"/2 * 72 x 1"/2 * 72
            var page         = new CGRect(0, 0, 8.5 * 72, 11 * 72);
            var pdfPageFrame = page.Inset(dx: (nfloat).25 * 72, dy: (nfloat).5 * 72);

            renderer.SetValueForKey(NSValue.FromCGRect(page), new NSString("paperRect"));
            renderer.SetValueForKey(NSValue.FromCGRect(pdfPageFrame), new NSString("printableRect"));
            return(renderer.PrintToPdf());
        }
Exemplo n.º 5
0
        public static NSMutableData CreatePdfFile(this WebKit.WKWebView webView, UIViewPrintFormatter printFormatter)
        {
            var bounds = webView.Bounds;

            webView.Bounds = new CoreGraphics.CGRect(bounds.X, bounds.Y, bounds.Width, webView.ScrollView.ContentSize.Height);
            var pdfPageFrame = new CoreGraphics.CGRect(0, 0, webView.Bounds.Width, webView.Bounds.Height);
            var renderer     = new PdfRenderer();

            renderer.AddPrintFormatter(printFormatter, 0);
            renderer.SetValueForKey(NSValue.FromCGRect(UIScreen.MainScreen.Bounds), new NSString("paperRect"));
            renderer.SetValueForKey(NSValue.FromCGRect(pdfPageFrame), new NSString("printableRect"));
            webView.Bounds = bounds;
            return(renderer.PrintToPdf());
        }
        private NSData CreatePdfFile(UIViewPrintFormatter printFormatter)
        {
            var renderer = new UIPrintPageRenderer();

            renderer.AddPrintFormatter(printFormatter, 0);
            var point = new CoreGraphics.CGPoint(0, 0);

            var paperSize     = new CoreGraphics.CGSize(this.Frame.Size.Width, this.Frame.Size.Height);
            var printableRect = new CoreGraphics.CGRect(point, new CoreGraphics.CGSize(paperSize.Width, paperSize.Height));
            var paperRect     = new CoreGraphics.CGRect(point, new CoreGraphics.CGSize(paperSize.Width, paperSize.Height));

            renderer.SetValueForKey(NSValue.FromCGRect(paperRect), new NSString("paperRect"));
            renderer.SetValueForKey(NSValue.FromCGRect(printableRect), new NSString("printableRect"));

            return(renderer.PrintToPDF(paperRect));
        }
        public override void DrawRect(CoreGraphics.CGRect area, UIViewPrintFormatter formatter)
        {
            //var width = area.Width - (margin * 2);
            //var height = area.Height - (margin * 2);

            //var path = new CGPath();

            //path.MoveToPoint(margin + radius, margin);


            //path.

            //draw rectangle

            base.DrawRect(area, formatter);
        }
Exemplo n.º 8
0
        public override void DrawRect(
            CoreGraphics.CGRect area,
            UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            if ((area.Width > 0) && area.Height > 0)
            {
                Rectangle bounds = new Rectangle((float)area.X, (float)area.Y, (float)area.Width, (float)area.Height);

                var graphicsContext = UIGraphics.GetCurrentContext();

                var drawContext = new NativeDrawContext(graphicsContext, area);

                this._drawDelegate.InvokeDrawBackground(drawContext, bounds);
            }
        }
Exemplo n.º 9
0
        public static NSMutableData CreatePdfFile(this WKWebView webView, UIViewPrintFormatter printFormatter, PageSize pageSize, PageMargin margin)
        {
            var bounds = webView.Bounds;

            //webView.Bounds = new CoreGraphics.CGRect(bounds.X, bounds.Y, bounds.Width, webView.ScrollView.ContentSize.Height);
            webView.Bounds = new CoreGraphics.CGRect(0, 0, (nfloat)pageSize.Width, (nfloat)pageSize.Height);
            margin         = margin ?? new PageMargin();
            var pdfPageFrame = new CoreGraphics.CGRect((nfloat)margin.Left, (nfloat)margin.Top, webView.Bounds.Width - margin.HorizontalThickness, webView.Bounds.Height - margin.VerticalThickness);
            //var pdfPageFrame = new CoreGraphics.CGRect(0, 0, 72 * 8, 72 * 10.5);
            var renderer = new PdfRenderer();

            renderer.AddPrintFormatter(printFormatter, 0);
            //renderer.SetValueForKey(NSValue.FromCGRect(UIScreen.MainScreen.Bounds), new NSString("paperRect"));
            renderer.SetValueForKey(NSValue.FromCGRect(webView.Bounds), new NSString("paperRect"));
            renderer.SetValueForKey(NSValue.FromCGRect(pdfPageFrame), new NSString("printableRect"));
            webView.Bounds = bounds;
            return(renderer.PrintToPdf());
        }
Exemplo n.º 10
0
        private void _loadFinished(object sender, EventArgs e)
        {
            var webview = sender as UIWebView;
            UIPrintInteractionController controller = UIPrintInteractionController.SharedPrintController;

            if (null == controller)
            {
                return;
            }

            // 设置打印机的一些默认信息
            UIPrintInfo printInfo = UIPrintInfo.PrintInfo;

            // 输出类型
            printInfo.OutputType = UIPrintInfoOutputType.General;
            // 打印队列名称
            printInfo.JobName = "HtmlDemo";
            // 是否单双面打印
            printInfo.Duplex = UIPrintInfoDuplex.LongEdge;
            // 设置默认打印信息
            controller.PrintInfo = printInfo;

            // 显示页码范围
            controller.ShowsPageRange = true;

            // 预览设置
            UIPrintPageRenderer myRenderer = new UIPrintPageRenderer();

            // To draw the content of each page, a UIViewPrintFormatter is used.
            // 生成html格式
            UIViewPrintFormatter viewFormatter = webview.ViewPrintFormatter;

            myRenderer.AddPrintFormatter(viewFormatter, 0);
            // 渲染html
            controller.PrintPageRenderer = myRenderer;

            controller.Present(true, (handler, completed, err) =>
            {
                if (!completed && err != null)
                {
                    System.Diagnostics.Debug.WriteLine("Printer Error");
                }
            });
        }
Exemplo n.º 11
0
        public override void DrawRect(CGRect area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            var textRect    = TextRect(area);
            var context     = UIGraphics.GetCurrentContext();
            var borderlines = new CGPoint[]
            {
                new CGPoint(0, textRect.Height - 1),
                new CGPoint(textRect.Width, textRect.Height - 1)
            };

            context.BeginPath();
            context.AddLines(borderlines);
            context.SetLineWidth(1);
            if (Enabled)
            {
                context.SetLineDash(0, new nfloat[] { 2, 4 });
            }
            context.SetStrokeColor(LineColor.CGColor);
            context.StrokePath();
        }
Exemplo n.º 12
0
        public override void DrawRect(CGRect area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);
            nfloat cellSize = area.Width / cellCount;
            var    context  = UIGraphics.GetCurrentContext();

            context.SetLineWidth(1);
            context.SetStrokeColor(UIColor.Gray.CGColor);

            for (int row = 0; row < cellSize; row++)
            {
                nfloat    top     = row * cellSize;
                CGPoint[] pointsH = { new CGPoint(0, top), new CGPoint(area.Width, top) };
                context.AddLines(pointsH);
                for (int column = 0; column < cellSize; column++)
                {
                    nfloat    left    = column * cellSize;
                    CGPoint[] pointsV = { new CGPoint(left, 0), new CGPoint(left, area.Height) };
                    context.AddLines(pointsV);
                }
            }

            context.DrawPath(CGPathDrawingMode.FillStroke);
        }
Exemplo n.º 13
0
		public override void DrawRect (RectangleF area, UIViewPrintFormatter formatter)
		{
			base.DrawRect (area, formatter);

			//General Declarations
			CGContext context = UIGraphics.GetCurrentContext ();

			// Color Declarations
			UIColor mmFill = new UIColor (0F, 0F, 0F, 0.196F);
			UIColor shape1DropShadowColor = new UIColor (1F, 1F, 1F, 0.4F);
			UIColor shape1InnerShadowColor = new UIColor (0F, 0F, 0F, 0.392F);

			// Shadow Declarations
			UIColor mmDropShadow = shape1DropShadowColor;
			SizeF mmDropShadowOffset = new SizeF (0.1F, 1.1F);
			Single mmDropShadowBlurRadius = 0;
			UIColor mmInnerShadow = shape1InnerShadowColor;
			SizeF mmInnerShadowOffset = new SizeF (0.1F, 1.1F);
			Single mmInnerShadowBlurRadius = 0;

			// Frames
			RectangleF frame = this.Bounds;

			// mmGroup
			{
				// mmShape Drawing
				UIBezierPath mmShapePath = new UIBezierPath ();
				mmShapePath.MoveTo (new PointF (frame.GetMinX () + 0.51759F * frame.Width, frame.GetMinY () + 0.96761F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.37558F * frame.Width, frame.GetMinY() + 0.91398F * frame.Height),
					new PointF (frame.GetMinX() + 0.46395F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height),
					new PointF (frame.GetMinX() + 0.41351F * frame.Width, frame.GetMinY() + 0.94854F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.31759F * frame.Width, frame.GetMinY() + 0.76824F * frame.Height),
					new PointF (frame.GetMinX() + 0.33346F * frame.Width, frame.GetMinY() + 0.87556F * frame.Height),
					new PointF (frame.GetMinX() + 0.31234F * frame.Width, frame.GetMinY() + 0.82249F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.31904F * frame.Width, frame.GetMinY() + 0.75325F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.30262F * frame.Width, frame.GetMinY() + 0.75459F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.28470F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height),
					new PointF (frame.GetMinX() + 0.29666F * frame.Width, frame.GetMinY() + 0.75510F * frame.Height),
					new PointF (frame.GetMinX() + 0.29065F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.14274F * frame.Width, frame.GetMinY() + 0.70173F * frame.Height),
					new PointF (frame.GetMinX() + 0.23106F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height),
					new PointF (frame.GetMinX() + 0.18067F * frame.Width, frame.GetMinY() + 0.73625F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.14274F * frame.Width, frame.GetMinY() + 0.44291F * frame.Height),
					new PointF (frame.GetMinX() + 0.06451F * frame.Width, frame.GetMinY() + 0.63038F * frame.Height),
					new PointF (frame.GetMinX() + 0.06451F * frame.Width, frame.GetMinY() + 0.51425F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.45528F * frame.Width, frame.GetMinY() + 0.15799F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.48085F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height),
					new PointF (frame.GetMinX() + 0.46207F * frame.Width, frame.GetMinY() + 0.15176F * frame.Height),
					new PointF (frame.GetMinX() + 0.47120F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.50639F * frame.Width, frame.GetMinY() + 0.15799F * frame.Height),
					new PointF (frame.GetMinX() + 0.49051F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height),
					new PointF (frame.GetMinX() + 0.49957F * frame.Width, frame.GetMinY() + 0.15176F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.50639F * frame.Width, frame.GetMinY() + 0.20462F * frame.Height),
					new PointF (frame.GetMinX() + 0.52050F * frame.Width, frame.GetMinY() + 0.17087F * frame.Height),
					new PointF (frame.GetMinX() + 0.52050F * frame.Width, frame.GetMinY() + 0.19177F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.19390F * frame.Width, frame.GetMinY() + 0.48951F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.19386F * frame.Width, frame.GetMinY() + 0.65510F * frame.Height),
					new PointF (frame.GetMinX() + 0.14397F * frame.Width, frame.GetMinY() + 0.53518F * frame.Height),
					new PointF (frame.GetMinX() + 0.14397F * frame.Width, frame.GetMinY() + 0.60942F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.28476F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height),
					new PointF (frame.GetMinX() + 0.21821F * frame.Width, frame.GetMinY() + 0.67720F * frame.Height),
					new PointF (frame.GetMinX() + 0.25047F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.37557F * frame.Width, frame.GetMinY() + 0.65514F * frame.Height),
					new PointF (frame.GetMinX() + 0.31904F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height),
					new PointF (frame.GetMinX() + 0.35128F * frame.Width, frame.GetMinY() + 0.67720F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.68812F * frame.Width, frame.GetMinY() + 0.37025F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.71365F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height),
					new PointF (frame.GetMinX() + 0.69491F * frame.Width, frame.GetMinY() + 0.36401F * frame.Height),
					new PointF (frame.GetMinX() + 0.70403F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.73923F * frame.Width, frame.GetMinY() + 0.37025F * frame.Height),
					new PointF (frame.GetMinX() + 0.72332F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height),
					new PointF (frame.GetMinX() + 0.73241F * frame.Width, frame.GetMinY() + 0.36401F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.73923F * frame.Width, frame.GetMinY() + 0.41681F * frame.Height),
					new PointF (frame.GetMinX() + 0.75333F * frame.Width, frame.GetMinY() + 0.38310F * frame.Height),
					new PointF (frame.GetMinX() + 0.75333F * frame.Width, frame.GetMinY() + 0.40399F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.42673F * frame.Width, frame.GetMinY() + 0.70173F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.42670F * frame.Width, frame.GetMinY() + 0.86737F * frame.Height),
					new PointF (frame.GetMinX() + 0.37681F * frame.Width, frame.GetMinY() + 0.74744F * frame.Height),
					new PointF (frame.GetMinX() + 0.37681F * frame.Width, frame.GetMinY() + 0.82172F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height),
					new PointF (frame.GetMinX() + 0.45104F * frame.Width, frame.GetMinY() + 0.88944F * frame.Height),
					new PointF (frame.GetMinX() + 0.48328F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.60840F * frame.Width, frame.GetMinY() + 0.86743F * frame.Height),
					new PointF (frame.GetMinX() + 0.55183F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height),
					new PointF (frame.GetMinX() + 0.58413F * frame.Width, frame.GetMinY() + 0.88944F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.92092F * frame.Width, frame.GetMinY() + 0.58246F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.94646F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height),
					new PointF (frame.GetMinX() + 0.92773F * frame.Width, frame.GetMinY() + 0.57623F * frame.Height),
					new PointF (frame.GetMinX() + 0.93682F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.97208F * frame.Width, frame.GetMinY() + 0.58246F * frame.Height),
					new PointF (frame.GetMinX() + 0.95617F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height),
					new PointF (frame.GetMinX() + 0.96523F * frame.Width, frame.GetMinY() + 0.57623F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.97208F * frame.Width, frame.GetMinY() + 0.62912F * frame.Height),
					new PointF (frame.GetMinX() + 0.98615F * frame.Width, frame.GetMinY() + 0.59535F * frame.Height),
					new PointF (frame.GetMinX() + 0.98615F * frame.Width, frame.GetMinY() + 0.61626F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.65956F * frame.Width, frame.GetMinY() + 0.91398F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height),
					new PointF (frame.GetMinX() + 0.62160F * frame.Width, frame.GetMinY() + 0.94854F * frame.Height),
					new PointF (frame.GetMinX() + 0.57117F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height));
				mmShapePath.ClosePath ();
				mmShapePath.MoveTo (new PointF (frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.49408F * frame.Width, frame.GetMinY() + 0.80982F * frame.Height),
					new PointF (frame.GetMinX() + 0.50999F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height),
					new PointF (frame.GetMinX() + 0.50091F * frame.Width, frame.GetMinY() + 0.81600F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.49408F * frame.Width, frame.GetMinY() + 0.76313F * frame.Height),
					new PointF (frame.GetMinX() + 0.48000F * frame.Width, frame.GetMinY() + 0.79686F * frame.Height),
					new PointF (frame.GetMinX() + 0.48000F * frame.Width, frame.GetMinY() + 0.77600F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.80659F * frame.Width, frame.GetMinY() + 0.47824F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.80662F * frame.Width, frame.GetMinY() + 0.31264F * frame.Height),
					new PointF (frame.GetMinX() + 0.85650F * frame.Width, frame.GetMinY() + 0.43259F * frame.Height),
					new PointF (frame.GetMinX() + 0.85650F * frame.Width, frame.GetMinY() + 0.35831F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.71574F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height),
					new PointF (frame.GetMinX() + 0.78226F * frame.Width, frame.GetMinY() + 0.29053F * frame.Height),
					new PointF (frame.GetMinX() + 0.75001F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.62493F * frame.Width, frame.GetMinY() + 0.31260F * frame.Height),
					new PointF (frame.GetMinX() + 0.68146F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height),
					new PointF (frame.GetMinX() + 0.64921F * frame.Width, frame.GetMinY() + 0.29053F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.31239F * frame.Width, frame.GetMinY() + 0.59752F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.28684F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height),
					new PointF (frame.GetMinX() + 0.30556F * frame.Width, frame.GetMinY() + 0.60378F * frame.Height),
					new PointF (frame.GetMinX() + 0.29644F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.26125F * frame.Width, frame.GetMinY() + 0.59752F * frame.Height),
					new PointF (frame.GetMinX() + 0.27718F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height),
					new PointF (frame.GetMinX() + 0.26808F * frame.Width, frame.GetMinY() + 0.60378F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.26125F * frame.Width, frame.GetMinY() + 0.55093F * frame.Height),
					new PointF (frame.GetMinX() + 0.24715F * frame.Width, frame.GetMinY() + 0.58467F * frame.Height),
					new PointF (frame.GetMinX() + 0.24715F * frame.Width, frame.GetMinY() + 0.56377F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.57377F * frame.Width, frame.GetMinY() + 0.26601F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.57380F * frame.Width, frame.GetMinY() + 0.10041F * frame.Height),
					new PointF (frame.GetMinX() + 0.62368F * frame.Width, frame.GetMinY() + 0.22029F * frame.Height),
					new PointF (frame.GetMinX() + 0.62368F * frame.Width, frame.GetMinY() + 0.14606F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.48291F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height),
					new PointF (frame.GetMinX() + 0.54946F * frame.Width, frame.GetMinY() + 0.07832F * frame.Height),
					new PointF (frame.GetMinX() + 0.51721F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.39208F * frame.Width, frame.GetMinY() + 0.10040F * frame.Height),
					new PointF (frame.GetMinX() + 0.44863F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height),
					new PointF (frame.GetMinX() + 0.41637F * frame.Width, frame.GetMinY() + 0.07832F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.07956F * frame.Width, frame.GetMinY() + 0.38530F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.05400F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height),
					new PointF (frame.GetMinX() + 0.07274F * frame.Width, frame.GetMinY() + 0.39149F * frame.Height),
					new PointF (frame.GetMinX() + 0.06365F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.02841F * frame.Width, frame.GetMinY() + 0.38530F * frame.Height),
					new PointF (frame.GetMinX() + 0.04434F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height),
					new PointF (frame.GetMinX() + 0.03525F * frame.Width, frame.GetMinY() + 0.39149F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.02841F * frame.Width, frame.GetMinY() + 0.33867F * frame.Height),
					new PointF (frame.GetMinX() + 0.01434F * frame.Width, frame.GetMinY() + 0.37241F * frame.Height),
					new PointF (frame.GetMinX() + 0.01434F * frame.Width, frame.GetMinY() + 0.35151F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.34095F * frame.Width, frame.GetMinY() + 0.05378F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.48291F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height),
					new PointF (frame.GetMinX() + 0.37888F * frame.Width, frame.GetMinY() + 0.01919F * frame.Height),
					new PointF (frame.GetMinX() + 0.42931F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.62491F * frame.Width, frame.GetMinY() + 0.05378F * frame.Height),
					new PointF (frame.GetMinX() + 0.53657F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height),
					new PointF (frame.GetMinX() + 0.58700F * frame.Width, frame.GetMinY() + 0.01919F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.68292F * frame.Width, frame.GetMinY() + 0.19950F * frame.Height),
					new PointF (frame.GetMinX() + 0.66705F * frame.Width, frame.GetMinY() + 0.09219F * frame.Height),
					new PointF (frame.GetMinX() + 0.68815F * frame.Width, frame.GetMinY() + 0.14529F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.68143F * frame.Width, frame.GetMinY() + 0.21454F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.69786F * frame.Width, frame.GetMinY() + 0.21318F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.71580F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height),
					new PointF (frame.GetMinX() + 0.70379F * frame.Width, frame.GetMinY() + 0.21269F * frame.Height),
					new PointF (frame.GetMinX() + 0.70984F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.85774F * frame.Width, frame.GetMinY() + 0.26604F * frame.Height),
					new PointF (frame.GetMinX() + 0.76941F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height),
					new PointF (frame.GetMinX() + 0.81981F * frame.Width, frame.GetMinY() + 0.23147F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.85774F * frame.Width, frame.GetMinY() + 0.52485F * frame.Height),
					new PointF (frame.GetMinX() + 0.93599F * frame.Width, frame.GetMinY() + 0.33738F * frame.Height),
					new PointF (frame.GetMinX() + 0.93599F * frame.Width, frame.GetMinY() + 0.45349F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.54521F * frame.Width, frame.GetMinY() + 0.80977F * frame.Height));
				mmShapePath.AddCurveToPoint (
					new PointF (frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height),
					new PointF (frame.GetMinX() + 0.53840F * frame.Width, frame.GetMinY() + 0.81600F * frame.Height),
					new PointF (frame.GetMinX() + 0.52930F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
				mmShapePath.AddLineTo (new PointF (frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
				mmShapePath.ClosePath ();
				context.SaveState ();
				context.SetShadowWithColor (mmDropShadowOffset, mmDropShadowBlurRadius, mmDropShadow.CGColor);
				context.SetBlendMode (CGBlendMode.Overlay);
				mmFill.SetFill ();
				mmShapePath.Fill ();

				RectangleF mmShapeBorderRect = RectangleF.Inflate (mmShapePath.Bounds, mmInnerShadowBlurRadius, mmInnerShadowBlurRadius);
				mmShapeBorderRect.Offset (mmInnerShadowOffset.Width, mmInnerShadowOffset.Height);
				mmShapeBorderRect.UnionWith (mmShapePath.Bounds);

				UIBezierPath mmShapeNegativePath = UIBezierPath.FromRect (mmShapeBorderRect);
				mmShapeNegativePath.AppendPath (mmShapePath);
				mmShapeNegativePath.UsesEvenOddFillRule = true;

				context.SaveState ();
				{
					Single xOffset = mmInnerShadowOffset.Width + (float) Math.Round (mmShapeBorderRect.Size.Width);
					Single yOffset = mmInnerShadowOffset.Height;
					context.SetShadowWithColor (new SizeF (xOffset + CopySign (0.1F, xOffset), yOffset + CopySign (0.1F, yOffset)), mmInnerShadowBlurRadius, mmInnerShadow.CGColor);
					mmShapePath.AddClip ();
					CGAffineTransform transform = CGAffineTransform.MakeTranslation ((float)-Math.Round (mmShapeBorderRect.Size.Width), 0F);
					mmShapeNegativePath.ApplyTransform (transform);
					UIColor.Gray.SetFill ();
					mmShapeNegativePath.Fill ();
				}
				context.RestoreState ();
				context.RestoreState ();
			}
		}
Exemplo n.º 14
0
        public override void DrawRect(System.Drawing.RectangleF area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            UIColor checkMarkColor = this.Color;

            RectangleF frame = this.Bounds;

            UIBezierPath checkMarkPath = new UIBezierPath();

            checkMarkPath.MoveTo(new PointF(frame.GetMinX() + 0.07087F * frame.Width, frame.GetMinY() + 0.48855F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.12500F * frame.Width, frame.GetMinY() + 0.45284F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.21038F * frame.Width, frame.GetMinY() + 0.47898F * frame.Height),
                new PointF(frame.GetMinX() + 0.15489F * frame.Width, frame.GetMinY() + 0.43312F * frame.Height),
                new PointF(frame.GetMinX() + 0.19312F * frame.Width, frame.GetMinY() + 0.44482F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.51450F * frame.Width, frame.GetMinY() + 0.79528F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.49163F * frame.Width, frame.GetMinY() + 0.89286F * frame.Height),
                new PointF(frame.GetMinX() + 0.53176F * frame.Width, frame.GetMinY() + 0.82945F * frame.Height),
                new PointF(frame.GetMinX() + 0.52152F * frame.Width, frame.GetMinY() + 0.87313F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.38337F * frame.Width, frame.GetMinY() + 0.96429F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.07087F * frame.Width, frame.GetMinY() + 0.48855F * frame.Height),
                new PointF(frame.GetMinX() + 0.03074F * frame.Width, frame.GetMinY() + 0.55196F * frame.Height),
                new PointF(frame.GetMinX() + 0.04098F * frame.Width, frame.GetMinY() + 0.50828F * frame.Height));
            checkMarkPath.ClosePath();
            checkMarkPath.MoveTo(new PointF(frame.GetMinX() + 0.92048F * frame.Width, frame.GetMinY() + 0.00641F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.93750F * frame.Width, frame.GetMinY() + 0.02427F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.96038F * frame.Width, frame.GetMinY() + 0.12184F * frame.Height),
                new PointF(frame.GetMinX() + 0.96739F * frame.Width, frame.GetMinY() + 0.04399F * frame.Height),
                new PointF(frame.GetMinX() + 0.97764F * frame.Width, frame.GetMinY() + 0.08768F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.51450F * frame.Width, frame.GetMinY() + 0.93814F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.42913F * frame.Width, frame.GetMinY() + 0.96429F * frame.Height),
                new PointF(frame.GetMinX() + 0.49724F * frame.Width, frame.GetMinY() + 0.97230F * frame.Height),
                new PointF(frame.GetMinX() + 0.45902F * frame.Width, frame.GetMinY() + 0.98401F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.32087F * frame.Width, frame.GetMinY() + 0.89286F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.29800F * frame.Width, frame.GetMinY() + 0.79528F * frame.Height),
                new PointF(frame.GetMinX() + 0.29098F * frame.Width, frame.GetMinY() + 0.87313F * frame.Height),
                new PointF(frame.GetMinX() + 0.28074F * frame.Width, frame.GetMinY() + 0.82945F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.83511F * frame.Width, frame.GetMinY() + 0.03255F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.92048F * frame.Width, frame.GetMinY() + 0.00641F * frame.Height),
                new PointF(frame.GetMinX() + 0.85237F * frame.Width, frame.GetMinY() + 0.00161F * frame.Height),
                new PointF(frame.GetMinX() + 0.89059F * frame.Width, frame.GetMinY() + -0.01331F * frame.Height));
            checkMarkPath.ClosePath();
            checkMarkPath.MoveTo(new PointF(frame.GetMinX() + 0.37500F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.43750F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.85714F * frame.Height),
                new PointF(frame.GetMinX() + 0.47202F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height),
                new PointF(frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.81769F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.92857F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.43750F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height),
                new PointF(frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.96802F * frame.Height),
                new PointF(frame.GetMinX() + 0.47202F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.37500F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.92857F * frame.Height),
                new PointF(frame.GetMinX() + 0.34048F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height),
                new PointF(frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.96802F * frame.Height));
            checkMarkPath.AddLineTo(new PointF(frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.85714F * frame.Height));
            checkMarkPath.AddCurveToPoint(
                new PointF(frame.GetMinX() + 0.37500F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height),
                new PointF(frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.81769F * frame.Height),
                new PointF(frame.GetMinX() + 0.34048F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height));
            checkMarkPath.ClosePath();
            checkMarkColor.SetFill();
            checkMarkPath.Fill();
        }
Exemplo n.º 15
0
 public override void DrawRect(RectangleF area, UIViewPrintFormatter formatter)
 {
     base.DrawRect(area, formatter);
     this.minX = -this.Frame.Width / 2;
     this.maxX = this.Superview.Frame.Width - this.Frame.Width / 2;
 }
Exemplo n.º 16
0
        public override void DrawRect(CGRect area, UIViewPrintFormatter formatter)
        {
            CGContext context = UIGraphics.GetCurrentContext();

            drawSeparatorWithContext(context);
        }
Exemplo n.º 17
0
 public override void DrawRect(CGRect area, UIViewPrintFormatter formatter)
 {
     base.DrawRect(area, formatter);
 }
Exemplo n.º 18
0
 public override void DrawRect(RectangleF area, UIViewPrintFormatter formatter)
 {
     base.DrawRect (area, formatter);
 }
Exemplo n.º 19
0
        public override void DrawRect(CoreGraphics.CGRect area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            //draw circle
        }
Exemplo n.º 20
0
        public override void DrawRect(RectangleF area, UIViewPrintFormatter formatter)
        {
            base.DrawRect(area, formatter);

            //General Declarations
            CGContext context = UIGraphics.GetCurrentContext();

            // Color Declarations
            UIColor mmFill = new UIColor(0F, 0F, 0F, 0.196F);
            UIColor shape1DropShadowColor  = new UIColor(1F, 1F, 1F, 0.4F);
            UIColor shape1InnerShadowColor = new UIColor(0F, 0F, 0F, 0.392F);

            // Shadow Declarations
            UIColor mmDropShadow            = shape1DropShadowColor;
            SizeF   mmDropShadowOffset      = new SizeF(0.1F, 1.1F);
            Single  mmDropShadowBlurRadius  = 0;
            UIColor mmInnerShadow           = shape1InnerShadowColor;
            SizeF   mmInnerShadowOffset     = new SizeF(0.1F, 1.1F);
            Single  mmInnerShadowBlurRadius = 0;

            // Frames
            RectangleF frame = this.Bounds;

            // mmGroup
            {
                // mmShape Drawing
                UIBezierPath mmShapePath = new UIBezierPath();
                mmShapePath.MoveTo(new PointF(frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.37558F * frame.Width, frame.GetMinY() + 0.91398F * frame.Height),
                    new PointF(frame.GetMinX() + 0.46395F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height),
                    new PointF(frame.GetMinX() + 0.41351F * frame.Width, frame.GetMinY() + 0.94854F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.31759F * frame.Width, frame.GetMinY() + 0.76824F * frame.Height),
                    new PointF(frame.GetMinX() + 0.33346F * frame.Width, frame.GetMinY() + 0.87556F * frame.Height),
                    new PointF(frame.GetMinX() + 0.31234F * frame.Width, frame.GetMinY() + 0.82249F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.31904F * frame.Width, frame.GetMinY() + 0.75325F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.30262F * frame.Width, frame.GetMinY() + 0.75459F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.28470F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height),
                    new PointF(frame.GetMinX() + 0.29666F * frame.Width, frame.GetMinY() + 0.75510F * frame.Height),
                    new PointF(frame.GetMinX() + 0.29065F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.14274F * frame.Width, frame.GetMinY() + 0.70173F * frame.Height),
                    new PointF(frame.GetMinX() + 0.23106F * frame.Width, frame.GetMinY() + 0.75535F * frame.Height),
                    new PointF(frame.GetMinX() + 0.18067F * frame.Width, frame.GetMinY() + 0.73625F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.14274F * frame.Width, frame.GetMinY() + 0.44291F * frame.Height),
                    new PointF(frame.GetMinX() + 0.06451F * frame.Width, frame.GetMinY() + 0.63038F * frame.Height),
                    new PointF(frame.GetMinX() + 0.06451F * frame.Width, frame.GetMinY() + 0.51425F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.45528F * frame.Width, frame.GetMinY() + 0.15799F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.48085F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height),
                    new PointF(frame.GetMinX() + 0.46207F * frame.Width, frame.GetMinY() + 0.15176F * frame.Height),
                    new PointF(frame.GetMinX() + 0.47120F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.50639F * frame.Width, frame.GetMinY() + 0.15799F * frame.Height),
                    new PointF(frame.GetMinX() + 0.49051F * frame.Width, frame.GetMinY() + 0.14832F * frame.Height),
                    new PointF(frame.GetMinX() + 0.49957F * frame.Width, frame.GetMinY() + 0.15176F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.50639F * frame.Width, frame.GetMinY() + 0.20462F * frame.Height),
                    new PointF(frame.GetMinX() + 0.52050F * frame.Width, frame.GetMinY() + 0.17087F * frame.Height),
                    new PointF(frame.GetMinX() + 0.52050F * frame.Width, frame.GetMinY() + 0.19177F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.19390F * frame.Width, frame.GetMinY() + 0.48951F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.19386F * frame.Width, frame.GetMinY() + 0.65510F * frame.Height),
                    new PointF(frame.GetMinX() + 0.14397F * frame.Width, frame.GetMinY() + 0.53518F * frame.Height),
                    new PointF(frame.GetMinX() + 0.14397F * frame.Width, frame.GetMinY() + 0.60942F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.28476F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height),
                    new PointF(frame.GetMinX() + 0.21821F * frame.Width, frame.GetMinY() + 0.67720F * frame.Height),
                    new PointF(frame.GetMinX() + 0.25047F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.37557F * frame.Width, frame.GetMinY() + 0.65514F * frame.Height),
                    new PointF(frame.GetMinX() + 0.31904F * frame.Width, frame.GetMinY() + 0.68936F * frame.Height),
                    new PointF(frame.GetMinX() + 0.35128F * frame.Width, frame.GetMinY() + 0.67720F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.68812F * frame.Width, frame.GetMinY() + 0.37025F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.71365F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height),
                    new PointF(frame.GetMinX() + 0.69491F * frame.Width, frame.GetMinY() + 0.36401F * frame.Height),
                    new PointF(frame.GetMinX() + 0.70403F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.73923F * frame.Width, frame.GetMinY() + 0.37025F * frame.Height),
                    new PointF(frame.GetMinX() + 0.72332F * frame.Width, frame.GetMinY() + 0.36056F * frame.Height),
                    new PointF(frame.GetMinX() + 0.73241F * frame.Width, frame.GetMinY() + 0.36401F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.73923F * frame.Width, frame.GetMinY() + 0.41681F * frame.Height),
                    new PointF(frame.GetMinX() + 0.75333F * frame.Width, frame.GetMinY() + 0.38310F * frame.Height),
                    new PointF(frame.GetMinX() + 0.75333F * frame.Width, frame.GetMinY() + 0.40399F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.42673F * frame.Width, frame.GetMinY() + 0.70173F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.42670F * frame.Width, frame.GetMinY() + 0.86737F * frame.Height),
                    new PointF(frame.GetMinX() + 0.37681F * frame.Width, frame.GetMinY() + 0.74744F * frame.Height),
                    new PointF(frame.GetMinX() + 0.37681F * frame.Width, frame.GetMinY() + 0.82172F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height),
                    new PointF(frame.GetMinX() + 0.45104F * frame.Width, frame.GetMinY() + 0.88944F * frame.Height),
                    new PointF(frame.GetMinX() + 0.48328F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.60840F * frame.Width, frame.GetMinY() + 0.86743F * frame.Height),
                    new PointF(frame.GetMinX() + 0.55183F * frame.Width, frame.GetMinY() + 0.90159F * frame.Height),
                    new PointF(frame.GetMinX() + 0.58413F * frame.Width, frame.GetMinY() + 0.88944F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.92092F * frame.Width, frame.GetMinY() + 0.58246F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.94646F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height),
                    new PointF(frame.GetMinX() + 0.92773F * frame.Width, frame.GetMinY() + 0.57623F * frame.Height),
                    new PointF(frame.GetMinX() + 0.93682F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.97208F * frame.Width, frame.GetMinY() + 0.58246F * frame.Height),
                    new PointF(frame.GetMinX() + 0.95617F * frame.Width, frame.GetMinY() + 0.57284F * frame.Height),
                    new PointF(frame.GetMinX() + 0.96523F * frame.Width, frame.GetMinY() + 0.57623F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.97208F * frame.Width, frame.GetMinY() + 0.62912F * frame.Height),
                    new PointF(frame.GetMinX() + 0.98615F * frame.Width, frame.GetMinY() + 0.59535F * frame.Height),
                    new PointF(frame.GetMinX() + 0.98615F * frame.Width, frame.GetMinY() + 0.61626F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.65956F * frame.Width, frame.GetMinY() + 0.91398F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height),
                    new PointF(frame.GetMinX() + 0.62160F * frame.Width, frame.GetMinY() + 0.94854F * frame.Height),
                    new PointF(frame.GetMinX() + 0.57117F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.51759F * frame.Width, frame.GetMinY() + 0.96761F * frame.Height));
                mmShapePath.ClosePath();
                mmShapePath.MoveTo(new PointF(frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.49408F * frame.Width, frame.GetMinY() + 0.80982F * frame.Height),
                    new PointF(frame.GetMinX() + 0.50999F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height),
                    new PointF(frame.GetMinX() + 0.50091F * frame.Width, frame.GetMinY() + 0.81600F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.49408F * frame.Width, frame.GetMinY() + 0.76313F * frame.Height),
                    new PointF(frame.GetMinX() + 0.48000F * frame.Width, frame.GetMinY() + 0.79686F * frame.Height),
                    new PointF(frame.GetMinX() + 0.48000F * frame.Width, frame.GetMinY() + 0.77600F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.80659F * frame.Width, frame.GetMinY() + 0.47824F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.80662F * frame.Width, frame.GetMinY() + 0.31264F * frame.Height),
                    new PointF(frame.GetMinX() + 0.85650F * frame.Width, frame.GetMinY() + 0.43259F * frame.Height),
                    new PointF(frame.GetMinX() + 0.85650F * frame.Width, frame.GetMinY() + 0.35831F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.71574F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height),
                    new PointF(frame.GetMinX() + 0.78226F * frame.Width, frame.GetMinY() + 0.29053F * frame.Height),
                    new PointF(frame.GetMinX() + 0.75001F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.62493F * frame.Width, frame.GetMinY() + 0.31260F * frame.Height),
                    new PointF(frame.GetMinX() + 0.68146F * frame.Width, frame.GetMinY() + 0.27840F * frame.Height),
                    new PointF(frame.GetMinX() + 0.64921F * frame.Width, frame.GetMinY() + 0.29053F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.31239F * frame.Width, frame.GetMinY() + 0.59752F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.28684F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height),
                    new PointF(frame.GetMinX() + 0.30556F * frame.Width, frame.GetMinY() + 0.60378F * frame.Height),
                    new PointF(frame.GetMinX() + 0.29644F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.26125F * frame.Width, frame.GetMinY() + 0.59752F * frame.Height),
                    new PointF(frame.GetMinX() + 0.27718F * frame.Width, frame.GetMinY() + 0.60718F * frame.Height),
                    new PointF(frame.GetMinX() + 0.26808F * frame.Width, frame.GetMinY() + 0.60378F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.26125F * frame.Width, frame.GetMinY() + 0.55093F * frame.Height),
                    new PointF(frame.GetMinX() + 0.24715F * frame.Width, frame.GetMinY() + 0.58467F * frame.Height),
                    new PointF(frame.GetMinX() + 0.24715F * frame.Width, frame.GetMinY() + 0.56377F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.57377F * frame.Width, frame.GetMinY() + 0.26601F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.57380F * frame.Width, frame.GetMinY() + 0.10041F * frame.Height),
                    new PointF(frame.GetMinX() + 0.62368F * frame.Width, frame.GetMinY() + 0.22029F * frame.Height),
                    new PointF(frame.GetMinX() + 0.62368F * frame.Width, frame.GetMinY() + 0.14606F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.48291F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height),
                    new PointF(frame.GetMinX() + 0.54946F * frame.Width, frame.GetMinY() + 0.07832F * frame.Height),
                    new PointF(frame.GetMinX() + 0.51721F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.39208F * frame.Width, frame.GetMinY() + 0.10040F * frame.Height),
                    new PointF(frame.GetMinX() + 0.44863F * frame.Width, frame.GetMinY() + 0.06617F * frame.Height),
                    new PointF(frame.GetMinX() + 0.41637F * frame.Width, frame.GetMinY() + 0.07832F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.07956F * frame.Width, frame.GetMinY() + 0.38530F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.05400F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height),
                    new PointF(frame.GetMinX() + 0.07274F * frame.Width, frame.GetMinY() + 0.39149F * frame.Height),
                    new PointF(frame.GetMinX() + 0.06365F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.02841F * frame.Width, frame.GetMinY() + 0.38530F * frame.Height),
                    new PointF(frame.GetMinX() + 0.04434F * frame.Width, frame.GetMinY() + 0.39496F * frame.Height),
                    new PointF(frame.GetMinX() + 0.03525F * frame.Width, frame.GetMinY() + 0.39149F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.02841F * frame.Width, frame.GetMinY() + 0.33867F * frame.Height),
                    new PointF(frame.GetMinX() + 0.01434F * frame.Width, frame.GetMinY() + 0.37241F * frame.Height),
                    new PointF(frame.GetMinX() + 0.01434F * frame.Width, frame.GetMinY() + 0.35151F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.34095F * frame.Width, frame.GetMinY() + 0.05378F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.48291F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height),
                    new PointF(frame.GetMinX() + 0.37888F * frame.Width, frame.GetMinY() + 0.01919F * frame.Height),
                    new PointF(frame.GetMinX() + 0.42931F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.62491F * frame.Width, frame.GetMinY() + 0.05378F * frame.Height),
                    new PointF(frame.GetMinX() + 0.53657F * frame.Width, frame.GetMinY() + 0.00013F * frame.Height),
                    new PointF(frame.GetMinX() + 0.58700F * frame.Width, frame.GetMinY() + 0.01919F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.68292F * frame.Width, frame.GetMinY() + 0.19950F * frame.Height),
                    new PointF(frame.GetMinX() + 0.66705F * frame.Width, frame.GetMinY() + 0.09219F * frame.Height),
                    new PointF(frame.GetMinX() + 0.68815F * frame.Width, frame.GetMinY() + 0.14529F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.68143F * frame.Width, frame.GetMinY() + 0.21454F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.69786F * frame.Width, frame.GetMinY() + 0.21318F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.71580F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height),
                    new PointF(frame.GetMinX() + 0.70379F * frame.Width, frame.GetMinY() + 0.21269F * frame.Height),
                    new PointF(frame.GetMinX() + 0.70984F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.85774F * frame.Width, frame.GetMinY() + 0.26604F * frame.Height),
                    new PointF(frame.GetMinX() + 0.76941F * frame.Width, frame.GetMinY() + 0.21244F * frame.Height),
                    new PointF(frame.GetMinX() + 0.81981F * frame.Width, frame.GetMinY() + 0.23147F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.85774F * frame.Width, frame.GetMinY() + 0.52485F * frame.Height),
                    new PointF(frame.GetMinX() + 0.93599F * frame.Width, frame.GetMinY() + 0.33738F * frame.Height),
                    new PointF(frame.GetMinX() + 0.93599F * frame.Width, frame.GetMinY() + 0.45349F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.54521F * frame.Width, frame.GetMinY() + 0.80977F * frame.Height));
                mmShapePath.AddCurveToPoint(
                    new PointF(frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height),
                    new PointF(frame.GetMinX() + 0.53840F * frame.Width, frame.GetMinY() + 0.81600F * frame.Height),
                    new PointF(frame.GetMinX() + 0.52930F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
                mmShapePath.AddLineTo(new PointF(frame.GetMinX() + 0.51965F * frame.Width, frame.GetMinY() + 0.81940F * frame.Height));
                mmShapePath.ClosePath();
                context.SaveState();
                context.SetShadowWithColor(mmDropShadowOffset, mmDropShadowBlurRadius, mmDropShadow.CGColor);
                context.SetBlendMode(CGBlendMode.Overlay);
                mmFill.SetFill();
                mmShapePath.Fill();

                RectangleF mmShapeBorderRect = RectangleF.Inflate(mmShapePath.Bounds, mmInnerShadowBlurRadius, mmInnerShadowBlurRadius);
                mmShapeBorderRect.Offset(mmInnerShadowOffset.Width, mmInnerShadowOffset.Height);
                mmShapeBorderRect.UnionWith(mmShapePath.Bounds);

                UIBezierPath mmShapeNegativePath = UIBezierPath.FromRect(mmShapeBorderRect);
                mmShapeNegativePath.AppendPath(mmShapePath);
                mmShapeNegativePath.UsesEvenOddFillRule = true;

                context.SaveState();
                {
                    Single xOffset = mmInnerShadowOffset.Width + (float)Math.Round(mmShapeBorderRect.Size.Width);
                    Single yOffset = mmInnerShadowOffset.Height;
                    context.SetShadowWithColor(new SizeF(xOffset + CopySign(0.1F, xOffset), yOffset + CopySign(0.1F, yOffset)), mmInnerShadowBlurRadius, mmInnerShadow.CGColor);
                    mmShapePath.AddClip();
                    CGAffineTransform transform = CGAffineTransform.MakeTranslation((float)-Math.Round(mmShapeBorderRect.Size.Width), 0F);
                    mmShapeNegativePath.ApplyTransform(transform);
                    UIColor.Gray.SetFill();
                    mmShapeNegativePath.Fill();
                }
                context.RestoreState();
                context.RestoreState();
            }
        }
Exemplo n.º 21
0
		public override void DrawRect (System.Drawing.RectangleF area, UIViewPrintFormatter formatter)
		{
			base.DrawRect (area, formatter);

			UIColor checkMarkColor = this.Color;

			RectangleF frame = this.Bounds;

			UIBezierPath checkMarkPath = new UIBezierPath ();
			checkMarkPath.MoveTo (new PointF (frame.GetMinX () + 0.07087F * frame.Width, frame.GetMinY () + 0.48855F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.12500F * frame.Width, frame.GetMinY() + 0.45284F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.21038F * frame.Width, frame.GetMinY() + 0.47898F * frame.Height),
				new PointF (frame.GetMinX() + 0.15489F * frame.Width, frame.GetMinY() + 0.43312F * frame.Height),
				new PointF (frame.GetMinX() + 0.19312F * frame.Width, frame.GetMinY() + 0.44482F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.51450F * frame.Width, frame.GetMinY() + 0.79528F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.49163F * frame.Width, frame.GetMinY() + 0.89286F * frame.Height),
				new PointF (frame.GetMinX() + 0.53176F * frame.Width, frame.GetMinY() + 0.82945F * frame.Height),
				new PointF (frame.GetMinX() + 0.52152F * frame.Width, frame.GetMinY() + 0.87313F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.38337F * frame.Width, frame.GetMinY() + 0.96429F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.07087F * frame.Width, frame.GetMinY() + 0.48855F * frame.Height),
				new PointF (frame.GetMinX() + 0.03074F * frame.Width, frame.GetMinY() + 0.55196F * frame.Height),
				new PointF (frame.GetMinX() + 0.04098F * frame.Width, frame.GetMinY() + 0.50828F * frame.Height));
			checkMarkPath.ClosePath ();
			checkMarkPath.MoveTo (new PointF (frame.GetMinX () + 0.92048F * frame.Width, frame.GetMinY () + 0.00641F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.93750F * frame.Width, frame.GetMinY() + 0.02427F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.96038F * frame.Width, frame.GetMinY() + 0.12184F * frame.Height),
				new PointF (frame.GetMinX() + 0.96739F * frame.Width, frame.GetMinY() + 0.04399F * frame.Height),
				new PointF (frame.GetMinX() + 0.97764F * frame.Width, frame.GetMinY() + 0.08768F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.51450F * frame.Width, frame.GetMinY() + 0.93814F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.42913F * frame.Width, frame.GetMinY() + 0.96429F * frame.Height),
				new PointF (frame.GetMinX() + 0.49724F * frame.Width, frame.GetMinY() + 0.97230F * frame.Height),
				new PointF (frame.GetMinX() + 0.45902F * frame.Width, frame.GetMinY() + 0.98401F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.32087F * frame.Width, frame.GetMinY() + 0.89286F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.29800F * frame.Width, frame.GetMinY() + 0.79528F * frame.Height),
				new PointF (frame.GetMinX() + 0.29098F * frame.Width, frame.GetMinY() + 0.87313F * frame.Height),
				new PointF (frame.GetMinX() + 0.28074F * frame.Width, frame.GetMinY() + 0.82945F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.83511F * frame.Width, frame.GetMinY() + 0.03255F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.92048F * frame.Width, frame.GetMinY() + 0.00641F * frame.Height),
				new PointF (frame.GetMinX() + 0.85237F * frame.Width, frame.GetMinY() + 0.00161F * frame.Height),
				new PointF (frame.GetMinX() + 0.89059F * frame.Width, frame.GetMinY() + -0.01331F * frame.Height));
			checkMarkPath.ClosePath ();
			checkMarkPath.MoveTo (new PointF (frame.GetMinX () + 0.37500F * frame.Width, frame.GetMinY () + 0.78572F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.43750F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.85714F * frame.Height),
				new PointF (frame.GetMinX() + 0.47202F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height),
				new PointF (frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.81769F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.92857F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.43750F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height),
				new PointF (frame.GetMinX() + 0.50000F * frame.Width, frame.GetMinY() + 0.96802F * frame.Height),
				new PointF (frame.GetMinX() + 0.47202F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.37500F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.92857F * frame.Height),
				new PointF (frame.GetMinX() + 0.34048F * frame.Width, frame.GetMinY() + 1.00000F * frame.Height),
				new PointF (frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.96802F * frame.Height));
			checkMarkPath.AddLineTo (new PointF (frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.85714F * frame.Height));
			checkMarkPath.AddCurveToPoint (
				new PointF (frame.GetMinX() + 0.37500F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height),
				new PointF (frame.GetMinX() + 0.31250F * frame.Width, frame.GetMinY() + 0.81769F * frame.Height),
				new PointF (frame.GetMinX() + 0.34048F * frame.Width, frame.GetMinY() + 0.78572F * frame.Height));
			checkMarkPath.ClosePath ();
			checkMarkColor.SetFill ();
			checkMarkPath.Fill ();
		}