我正在尝试为渐变按钮添加边框:
var c = bdPencil.ColorMain;
Context.SetLineWidth(bdPencil.Width);
Context.SetStrokeColor(c.R, c.G, c.B, c.A);
Context.Clip();
CGColorSpace colorSpace = CGColorSpace.CreateDeviceRGB();
CGGradient gradient = new CGGradient(colorSpace, colors,
new float[]{ 0, 1 });
Context.DrawLinearGradient(gradient, new PointF((float)r.CenterX, (float)r.Top), new PointF((float)r.CenterX, (float)r.Bottom),
CGGradientDrawingOptions.DrawsAfterEndLocation);
Context.RestoreState();
它不工作。如果我用纯色做同样的事情,一切都会正常工作:
var c = bdPencil.ColorMain;
Context.SetLineWidth(bdPencil.Width);
Context.SetStrokeColor(c.R, c.G, c.B, c.A);
var g = bgPencil.ColorMain;
Context.SetFillColor(g.R, g.G, g.B, g.A);
Context.DrawPath(CGPathDrawingMode.FillStroke);
当我在DrawLinearGradinet
什么都没有发生后试图抚摸路径时。我想我需要像 GradientStroke 这样的东西,但我找不到它。
知道为什么吗?