我在UWP应用上工作,用户必须能够从相机拍摄照片,并通过绘制一些形状来添加细节。我认为最简单的方法是使用 InkToolbar 。所以我已经下载了官方样本:SimpleInk
但我不知道如何解决我的一些需求:
=>是否可以正确地做到这一点?或者我是否需要在网格中叠加图像和InkCanvas并截取屏幕截图?
=>有没有办法通过这个控件绘制圆形或矩形等形状?或者什么是允许用户“画画”的更好方法。形状很容易?
我也查看了Win2D样本Win2D-samples,但我没有找到类似的案例。
提前感谢您的反馈!
答案 0 :(得分:1)
向InkCanvas添加背景图片:我想获得一个包含原始照片和用户绘制的项目的BitmapImage
InkCanvas
不直接包含background
属性。您可以使用InkCanvas
控件创建Image
覆盖背景图片,例如Basic inking with InkCanvas示例节目。
但是如果您需要使用InkCanvas
绘图从原始图像获取新的BitmapImage,则需要使用Win2D库。有关更多详细信息和完整演示,请参阅this thread。
绘制基本形状,如圆形或矩形:所有样本都基于手绘不同类型的铅笔
为此,您上面提到的UAP Win2D-samples
样本提供了一个用于绘制您可以参考的圆圈的演示(与rectangles
相同,如下所示)。
args.DrawingSession.DrawEllipse(155, 115, 80, 30, Colors.Black, 3);
args.DrawingSession.DrawRectangle(155, 115, 80, 30, Colors.Black);
官方Complex inking sample还提供您可以测试和参考的Insert a shape
功能。