What is the Ink Recognizer API?

The Ink Recognizer Cognitive Service provides a cloud-based REST API to analyze and recognize digital ink content. Unlike services that use Optical Character Recognition (OCR), the API requires digital ink stroke data as input. Digital ink strokes are time-ordered sets of 2D points (X,Y coordinates) that represent the motion of input tools such as digital pens or fingers. It then recognizes the shapes and handwritten content from the input and returns a JSON response containing all recognized entities.

A flowchart describing sending an ink stroke input to the API

Features

With the Ink Recognizer API, you can easily recognize handwritten content in your applications.

Feature Description
Handwriting recognition Recognize handwritten content in 63 core languages and locales.
Layout recognition Get structural information about the digital ink content. Break the content into writing regions, paragraphs, lines, words, bulleted lists. Your applications can then use the layout information to build additional features like automatic list formatting, and shape alignment.
Shape recognition Recognize the most commonly used geometric shapes when taking notes.
Combined shapes and text recognition Recognize which ink strokes belong to shapes or handwritten content, and separately classify them.

Workflow

The Ink Recognizer API is a RESTful web service, making it easy to call from any programming language that can make HTTP requests and parse JSON.

You must have a Cognitive Services API account with access to the Ink Recognizer API. If you don't have an Azure subscription, you can create an account for free. You can get your subscription key from the Azure portal after creating your account, or Azure website after activating a free trial.

After signing up:

  1. Take your ink stroke data and format it into valid JSON.
  2. Send a request to the Ink Recognizer API with your data.
  3. Process the API response by parsing the returned JSON message.

Next steps

Try a quickstart in the following languages to begin making calls to the Ink Recognizer API.

To see how the Ink Recognition API works in a digital inking app, take a look at the following sample applications on GitHub: