UWP和InkToolbar:如何绘制基本形状

时间:2016-10-07 13:47:01

标签: xaml uwp draw shapes inkcanvas

我在UWP应用上工作,用户必须能够从相机拍摄照片,并通过绘制一些形状来添加细节。我认为最简单的方法是使用 InkToolbar 。所以我已经下载了官方样本:SimpleInk

但我不知道如何解决我的一些需求:

  • 向InkCanvas添加背景图片:我想获得一个 BitmapImage ,其中包含原始照片和用户绘制的项目

=>是否可以正确地做到这一点?或者我是否需要在网格中叠加图像和InkCanvas并截取屏幕截图?

  • 绘制基本形状,如圆形或矩形:所有样本均基于使用不同种类铅笔的手绘

=>有没有办法通过这个控件绘制圆形或矩形等形状?或者什么是允许用户“画画”的更好方法。形状很容易?

我也查看了Win2D样本Win2D-samples,但我没有找到类似的案例。

提前感谢您的反馈!

1 个答案:

答案 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功能。