我正在编写一个签名控制器,用户可以在其中写下他的签名,然后我将签名作为图像并将其保存回服务器。
我很快找到了这个优秀的样本: https://github.com/xamarin/monotouch-samples/blob/master/GLPaint-GameView/PaintingView.cs
但是我无法将绘画效果保存为图像。下面的代码只提供了一张没有实际图纸的黑色图片,那么如何将图纸的结果绘制到图像上下文中呢?
PaintingView drawingView;
...
UIGraphics.BeginImageContext(drawingView.Frame.Size);
var ctx = UIGraphics.GetCurrentContext();
drawingView.Layer.RenderInContext(ctx);
UIImage img = UIGraphics.GetImageFromCurrentImageContext();
UIGraphics.EndImageContext();
答案 0 :(得分:2)
使用OpenGL捕获时,可以按照此technical note中的Apple说明完成屏幕截图。
正常(非OpenGL)捕获可以在note之后完成。
答案 1 :(得分:1)
MonoTouch提供了截屏方便的方法,可以在使用UIKit或OpenGL运行时捕获屏幕内容。
UIKit应用程序
var screenshot = UIScreen.MainScreen.Capture ();
GLKit应用程序
var screenshot = iPhoneOSGameView.Capture ();