Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 自定义UIPrintPageRenderer不呈现任何内容_Iphone_Ios_Mono_Xamarin.ios - Fatal编程技术网

Iphone 自定义UIPrintPageRenderer不呈现任何内容

Iphone 自定义UIPrintPageRenderer不呈现任何内容,iphone,ios,mono,xamarin.ios,Iphone,Ios,Mono,Xamarin.ios,我创建了自己的UIPrintPageRenderer子类,在DrawContentForPage的重载中,我绘制了一个简单的矩形,但没有任何渲染: public override void DrawContentForPage (int index, RectangleF contentRect) { Context vContext = UIGraphics.GetCurrentContext (); vContext.SetStrokeColor (new float[] {

我创建了自己的UIPrintPageRenderer子类,在DrawContentForPage的重载中,我绘制了一个简单的矩形,但没有任何渲染:

public override void DrawContentForPage (int index, RectangleF contentRect)
{
    Context vContext = UIGraphics.GetCurrentContext ();
    vContext.SetStrokeColor (new float[] { 1.0f, 0.0f, 0.0f, 1.0f });
    vContext.SetLineWidth (10);
    vContext.StrokeRect (new RectangleF (PrintableRect.Left + 10, PrintableRect.Top + 10, 100, 100));
}

为什么不呢?

事实证明有两种方法可以解决这个问题:

更改vContext.SetStrokeColor新浮点[]{1.0f,0.0f,0.0f,1.0f};至vContext.setRGBStrokeColor 1.0f、0.0f、0.0f、1.0f

调用vContext.SetStrokeColorSpace CGColorSpace.CreateDeviceRGB

这两种解决方案的效果都是先将当前笔划颜色空间设置为RGB,然后再设置颜色值。它以前不工作的原因是因为颜色空间显然没有设置为RGB,可能是CMYK或其他什么