Sketch 360 来到 Microsoft Surface Duo

阅读时间图标 3分钟读


读者帮助支持 MSpoweruser。如果您通过我们的链接购买,我们可能会获得佣金。 工具提示图标

阅读我们的披露页面,了解如何帮助 MSPoweruser 维持编辑团队 查看更多

2018 年,Microsoft 首席项目经理 Michael Scherotter 向 Microsoft Store 发布了 Sketch 360。

该应用程序可让您在 Windows 平板电脑上轻松绘制 360 度全景草图。

今天,Scherotter 发表了一篇博客文章,介绍了他将同一个应用程序引入 Android 并专门针对 Surface Duo 进行增强的过程。

Surface Duo 上的 Sketch 360

他指出,Surface Duo 独有支持压感 Surface Pen,同时拥有双屏界面,与 Windows 上 Sketch 360 的双窗格 UI 非常匹配。

因此,他决定使用 Xamarin.Forms 重建 Sketch 360,这样他就可以针对 Surface Duo、其他笔式原生 Android 设备(如三星 Galaxy Note)以及任何其他现代 Android 设备以及具有单个应用程序的 Apple iOS 设备。

该应用程序的架构由两个侧面、一个绘图画布和一个 360 度视图组成。 每次用户添加笔画时,360 度视图都会更新并平移到刚刚添加的笔画的终点。 Windows 上的绘图画布使用本机 InkCanvas 控件,这使得收集和渲染墨水变得容易。 在迁移到 Xamarin Forms 时,他需要重写大部分 C# 和 Xaml 代码,并且需要找到一些东西来提供墨迹输入,因为 Xamarin Forms 没有类似于 InkCanvas 的东西。 他使用 SkiaSharp 创建了一个 InkCanvasView,它处理墨迹输入和渲染,提供与 UWP InkCanvas 类似的 API 表面,并实现了足够的 API 表面以支持 Sketch 360 核心场景:

  • 绘制和擦除墨水笔画
  • 具有多种颜色和可变厚度的压敏墨水笔触
  • 支持平移和缩放的虚拟画布
  • 湿笔画更新以在绘图时启用弯曲的指南
  • 加载和保存矢量墨迹数据

在 Xamarin Forms 中,他将墨迹序列化为简单的 JSON 格式,并修改了 Windows 版本,以便能够在 Windows 墨迹之外读取该格式。 这意味着您可以在手机上开始绘制草图,将 .sketch360 文件保存到 OneDrive,然后在更大的 Surface 设备上再次打开以完成它。

Michael 发现了新的 Xamarin Forms 双窗格视图 API 对于双屏设备,可以轻松定义从单个窗格到两个窗格、纵向或横向的 UI。

风景

肖像

水平跨越

 垂直跨越

Xamarin 表单使创建跨平台移动创意应用程序的过程变得简单,并且通过 Xamarin Essentials 中的其他工具,他能够使其像本机应用程序一样具有功能和性能。 他还能够使用 Surface 双核模拟器 手头没有物理设备。

360 度视图是一个 WebView 控件,使用 巴比伦,一个开源的 JavaScript 3D 框架,它有一个 摄影圆顶 API. 他能够使用 Babylon.JS 的 HTML/JavaScript 代码,只需对 Windows 版本进行少量修改。

完整的应用程序现在可以在 Google Play 上使用,并且适用于任何现代 Android 设备,但最适用于支持压力感应笔的设备,如 Surface Duo 和三星 Galaxy Note。

查看应用程序 此处,并阅读完整的开发过程 在 Microsoft 开发博客上。

[appbox googleplay com.microsoft.garage.sketch360app]

有关主题的更多信息: 应用, Surface Duo