Interfejs API rozpoznawania pisma cyfrowego w ML Kit umożliwia rozpoznawanie odręcznego tekstu i klasyfikowanie gestów na platformie cyfrowej w setkach języków, a także klasyfikowanie szkiców. Interfejs ten korzysta z tej samej technologii, która jest używana w Gboard, w Tłumaczu Google i w grze Quick, Draw!.
Rozpoznawanie pisma cyfrowego umożliwia:
- Pisz po ekranie, zamiast pisać na klawiaturze wirtualnej. Dzięki temu użytkownicy mogą rysować znaki, które nie są dostępne na klawiaturze, np. ệ, अ lub 森 na klawiaturze z alfabetem łacińskim.
 - Wykonywanie podstawowych operacji na tekście (nawigacja, edytowanie, zaznaczanie itp.) za pomocą gestów.
 - Rozpoznawaj odręczne kształty i emotikony.
 
Cyfrowe rozpoznawanie atramentu obsługuje pociągnięcia rysowane przez użytkownika na ekranie. Jeśli chcesz odczytać tekst z obrazów zrobionych aparatem, użyj interfejsu Text Recognition API.
Rozpoznawanie pisma cyfrowego działa w pełni offline i jest obsługiwane na urządzeniach z Androidem oraz iOS.
Kluczowe funkcje
- Konwertuje tekst odręczny na sekwencje znaków Unicode
 - Działa na urządzeniu w czasie zbliżonym do rzeczywistego
 - Pismo odręczne użytkownika pozostaje na urządzeniu, a rozpoznawanie odbywa się bez połączenia z siecią
 - Obsługuje ponad 300 języków i ponad 25 systemów pisania – zobacz pełną listę obsługiwanych języków
- Obsługuje klasyfikację gestów dla tych języków za pomocą rozszerzeń 
-x-gesture 
 - Obsługuje klasyfikację gestów dla tych języków za pomocą rozszerzeń 
 - Rozpoznaje emotikony i podstawowe kształty
 - Utrzymuje mało miejsca na urządzeniu dzięki dynamicznemu pobieraniu pakietów językowych
 
Moduł rozpoznawania pobiera obiekt Ink jako dane wejściowe. Ink to wektorowa reprezentacja tego, co użytkownik napisał na ekranie: sekwencja kresek, z których każdy jest listą współrzędnych z informacjami o czasie nazywanymi punktami styczności z klientem. Kreska rozpoczyna się, gdy użytkownik przyłoży rysik lub palec, a kończy, gdy uniesie rysik. Wartość Ink jest przekazywana do modułu rozpoznawania, który zwraca co najmniej 1 możliwy wynik rozpoznawania z pewnymi poziomami ufności.
Przykłady
Angielskie pismo odręczne
Poniższa ilustracja po lewej stronie przedstawia, co użytkownik narysował na ekranie. Obraz po prawej stronie to odpowiedni obiekt Ink. Zawiera kreski z czerwonymi punktami, które reprezentują punkty styczności z klientem.
    

Są 4 styki. Pierwsze 2 kreski w obiekcie Ink wyglądają tak:
| Atrament | ||
|---|---|---|
| Styl 1 | x
    | 
   392, 391, 389, 287, ... | 
y
    | 
   52, 60, 76, 97... | |
t
    | 
   0, 37, 56, 75, ... | |
| Styl 2 | x
    | 
   497, 494, 493, 490... | 
y
    | 
   167, 165, 165, 165... | |
t
    | 
   694, 742, 751, 770, ... | |
| ... | ||
Gdy wyślesz ten obiekt Ink do modułu rozpoznawania języka angielskiego, wyświetli się kilka możliwych transkrypcji zawierających 5 lub 6 znaków. Są one uporządkowane według malejącej ufności:
| RecognitionResult | |
|---|---|
| Kandydat nr 1 | Handw | 
| Kandydat nr 2 | Handrw | 
| Kandydat nr 3 | twarde | 
| Kandydat nr 4 | Handu | 
| Kandydat nr 5 | Handwe | 
Gesty
Klasyfikatory gestów klasyfikują kreskę atramentem w jednej z 9 klas gestów wymienionych poniżej.
arch:abovearch:below | 
    ![]()  | 
  
caret:abovecaret:below | 
    ![]()  | 
  
circle | 
    ![]()  | 
  
![]()  | 
  |
scribble | 
    ![]()  | 
  
strike | 
    ![]()  | 
  
verticalbar | 
    ![]()  | 
  
writing | 
    ![]()  | 
  
Szkice emotikonów
Poniższa ilustracja po lewej stronie przedstawia, co użytkownik narysował na ekranie. Obraz po prawej stronie to odpowiedni obiekt Ink. Zawiera kreski z czerwonymi punktami, które reprezentują punkty styczności z klientem.
    

Obiekt Ink zawiera 6 kresek.
 
 
 
 
 
 
| Atrament | ||
|---|---|---|
| Styl 1 | x
    | 
   269, 266, 262, 255... | 
y
    | 
   40, 40, 40, 41... | |
t
    | 
   0, 36, 56, 75, ... | |
| Styl 2 | x
    | 
   179, 182, 183, 185... | 
y
    | 
   157, 158, 159, 160... | |
t
    | 
   2475, 2522, 2531, 2541, ... | |
| ... | ||
Gdy wyślesz ten kod Ink do modułu rozpoznawania emotikonów, otrzymasz kilka możliwych transkrypcji uporządkowanych według malejącej pewności siebie: 
| RecognitionResult | |
|---|---|
| Kandydat nr 1 | 😂 (U+1F62D) | 
| Kandydat nr 2 | 😃 (U+1F605) | 
| Kandydat nr 3 | 😹 (U+1F639) | 
| Kandydat nr 4 | 😄 (U+1F604) | 
| Kandydat nr 5 | 😆 (U+1F606) | 
    






