New in 1.1
Interactive Ink SDK 1.1 comes packed with improvements and several noticeable new features. This page provides an overview of the changes.
This version introduces official support for Windows desktop, with a .NET API and a WPF UI reference implementation.
It is now possible to export the content of a diagram block as a PowerPoint PPTX document. The diagram will correspond to a slide in the produced document and will always be exported in its converted form, even if the original diagram contains non-converted ink portions.
Interactive Ink SDK 1.1 adds the possibility to export diagram content to the Microsoft Office clipboard format. The
OFFICE_CLIPBOARD mime type lets you use the export function to retrieve content that you can place in the system clipboard (the key to use for the clipboard content is
Note that the Office clipboard format is not handled as a textual format: the export function will not return a string containing the content to place in the clipboard but let you define a file where it will be written to.
JIIX export can now include character information. To enable the feature, set the
export.jiix.text.chars configuration key to
With this option enabled, JIIX export will contain information such as the precise location of each character for each word-level recognition candidate. You may want this information to implement a search functionality on ink that has the ability to return the location of hits that are not full words (e.g. highlight the “My” part of “MyScript” when looking for “my”).
Along with the possibility to enable character information in JIIX export, iink SDK has added a new configuration option that can now let you choose whether you want to include word information or not in JIIX export.
The configuration key is
export.jiix.text.words. It is set to
true by default, which matches the default behavior in iink SDK 1.0.
export.jiix.text.wordsare related in that if you disable word information, character information will not include links to corresponding words, and if you disable character information, word information will not include indexes to the characters.
Parts of type Text can now optionally support guides. Such guides provide a visual hint for end users, letting them know where to write and at what size. They improve the recognition accuracy, as long as you make sure to write on the lines.
Guides can be respectively enabled and disabled by setting the
text.guides.enable value of the engine configuration to
In the event you want to integrate iink SDK’s internal undo/redo stack with your own application-level undo/redo stack, with native API two new methods have
been added to the editor object:
getPossibleUndoCount(), letting you respectively know how many operations were performed since a
content part was opened and how many of these operations it is possible to undo.
With web API the same information is contained in the details on “contentChanged” messages and “changed” events.
➤ Combine undo/redo stacks (advanced)
For native APIs, a new
isEmpty() editor method has been added to determine whether a block contains strokes or another block.
For web APIs, a new
isEmpty attribute has been added to “contentChanged” messages and “changed” events to determine whether a block contains strokes or
In 1.0, it was already possible to browse the internals of diagrams via the parsing of the corresponding JIIX export. However, it was not possible to programmatically access the corresponding blocks hierarchy from the editor nor to be notified when they are selected or their content changes.
In 1.1, a new configuration option was added,
diagram.enable-sub-blocks, set to
true by default. It makes it possible to access diagram sub-blocks, to be
notified of events and work on them as with regular blocks.
selectionChanged() callback to
IEditorListener, which lets you manage selections inside Text Document parts, as well as inside diagram blocks, provided that you enabled access to their internal block hierarchy.
activeBlockChanged() callback to
IEditorListener, which lets you know when a new text block is being edited. This lets you implement for example the “Smart Guide”, described below.
Note that, in order to avoid breaking compatibility, an
IEditorListener2 interface has been created to hold these new API on Java and C# platform.
The Web platform has seen as certain number of improvements to bring it closer to native platforms:
- Custom resources
- Non italic Google fonts are now supported, and the font path are computed server side.
- Add support of
The MyScript provided UI reference implementation has been improved:
- New WPF-based version and associated code examples are now available to cover the needs of the “traditional” Windows .NET platform.
- Many fixes and a better harmonization across the different supported platforms (in particular feature gap has been reduced between the various Windows platforms and Android/iOS).
- Addition of a new “Smart Guide” implementation to serve as a visual component that can be used to provide the user with immediate recognition feedback and let him change recognition candidates:
Interactive Ink SDK 1.1 is based on the latest version of MyScript’s core recognition SDK, resulting in performance and recognition improvements.
While recognition assets provided with iink SDK 1.0 will stay compatible, you may want to update your users to the latest assets if you migrate them to 1.1.
The migration brings the following benefits:
- Better recognition of words that are not part of the lexicon for 53 of iink SDK-supported languages: Afrikaans, Albanian, Armenian, Azeri, Basque, Belarusian, Bosnian, Bulgarian, Catalan, Croatian, Czech, Danish, Dutch (Belgium), Dutch (Netherlands), English (Canada), English (United Kingdom), English (USA), Estonian, Finnish, French (Canada), French (France), Galician, Georgian, German (Austria), German (Germany), Greek, Hungarian, Icelandic, Indonesian, Irish, Italian, Kazakh, Latvian, Lithuanian, Macedonian, Malay, Mongolian, Norwegian, Polish, Portuguese (Brazil), Portuguese (Portugal), Romanian, Russian, Serbian Cyrillic, Serbian (Latin), Slovak, Slovenian, Spanish (Mexico), Spanish (Spain), Swedish, Tatar, Turkish and Ukrainian
- Reduction of 15 to 20% of the error rate when recognizing math.
- Support of 7 new Japanese symbols: ゔ, ゕ, ゖ, ヷ, ヸ, ヹ and ヺ.
- Invalidation rectangle optimizations on Android, resulting in rendering performance improvements
- Diagram arrow rendering is now better-looking and aligned with what is done in MyScript’s own Nebo application
- Many bug fixes