[Windows 10] Inking: 筆跡功能的應用及實作


Windows 10 推出之後將支援許多種的輸入 (input) 方式,包括 Windows Hello 透過臉部特徵或虹膜取代密碼輸入、HoloLens 利用全息虛擬實境技術與人作 3D 互動等等。

本文則將介紹 Windows 10 加強後的筆跡 (Pen & Ink) 技術。 對開發者而言,多了 InkCanvas 控制項與基礎 DirectInk 類別,可以使用您已熟悉的程式語言如: C++、C# 或 Visual Basic 等,在 Windows 10 Apps 中實現更強大的筆跡功能。

比如:

叫出地圖後,用筆(或手指)畫上路線圖:

image

在連線遊戲中,即時紀錄如「狙擊手在右邊建築物屋頂」的筆跡訊息:

image

用原始筆跡回信:

image

或是先轉成文字…

image

image

Windows 10 在 Pen & Ink 的擴充性

要作到以上應用, Windows 10 提供的 InkCanvas 控制項定義了一個用於繪圖以及轉譯筆跡筆觸的重疊區域。此控制項的功能 (輸入、處理和轉譯) 則來自 InkPresenterInkStrokeInkRecognizerInkSynchronizer 等類別。

(目前使用 JavaScript 的 Windows 應用程式不支援這些類別)

也就是說,無論使用者是以「觸控筆」或是「手指」作輸入所得到的 “Ink” 物件,都能以原始筆跡、加上述解或描述 (metadata)、亦或轉譯成文字或圖檔等方式,作進一步創意的實踐。

image

開始實作吧!

假設我想在一個影像 (image) 上面疊一個筆跡畫布,在 XAML 描述中只要多加一個 InkCanvas 即可,非常直覺簡單:

<ScrollViewer>
    <Grid>
        <Image Source="Assets/signature.jpg" />
        <InkCanvas x:Name="myInkCanvas" />
    </Grid>
</ScrollViewer>

執行畫面如以下,各位可注意其中細微的筆觸差異,這些都會被紀錄在 Ink 物件中;同時寫字速度等資訊也會被紀錄下來,可作為進一步 (如筆跡辨認) 的應用。

image

想更進一步了解 Windows 10 在筆跡功能上的應用,請參考以下 10 分鐘的影片: (Developer's Guide to Windows 10 Preview: (07) Pen & Ink)

註:

若要嘗試這些新功能:

  1. 請加入 Windows Insider Program,取得並安裝 Windows 10 Developer Preview.
  2. 取得並安裝 Visual Studio 2015 CTP. (目前版本為 CTP6)
  3. 新專案中即會出現 Windows 10 Universal App 的範本。

同時:

1. 若您在測試過程中遇到問題:

  1. 請先檢視 release notes 以及 known issues with Visual Studio 2015 CTP6,查看是否為已知問題。
  2. 使用 Windows Store 及 Windows Phone Apps 論壇詢問。
  3. 若您發現的確是個 bug,可透過 Windows 10 內建的 Feedback App 來回報協助。

2. 若您對 API 有任何新功能的需求,則可透過 Windows platform developer UserVoice site 來建議,這網站會在 BUILD 2015 前持續更新,反應最新的 API 功能。

Comments (0)

Skip to main content