Text

Multiple IINKEditor objects can be created with the one IINKEngine?

Dear Team,

The response from your team is highly appreciated. We are able to recognise our hand-written text by your SDK now.


Few queries are below:

- Shall we create multiple IINKEditor objects with the IINKEngine instance?  If yes, each editor can process the recognition of strokes simultaneously ?

- On creating object for IINKEditor, it requires a part & viewSize to be assigned. Shall we create N number of part(IINKContentPart)s in one package (IINKContentPackage)?

- Any performance issues if we create many editor objects & packages/parts with the same IINKEngine?

Example Usage:  Our document has hundreds of pages with handwritten text, and we wanted to process each page to get recognition text information. If we have limitation in creating editor objects, we need to process one after the other which may needs more time hence user may not get the expected results.


Can you please help us with the clarifications for above queries?


Thanks,

Steve


Dear Steve,

thank you for your questions.

To answer these:

-Shall we create multiple IINKEditor objects with the IINKEngine instance?

>> You can indeed create multiple IINKEditor objects with one IINKEngine instance.


-If yes, each editor can process the recognition of strokes simultaneously?

>> Yes, multiple editors can run recognition in parallel, provided they are associated with different parts.


-On creating object for IINKEditor, it requires a part & viewSize to be assigned. Shall we create N number of part(IINKContentPart)s in one package (IINKContentPackage)?

>>It depends on your use-case:

- If you don’t need to save your package into a file, one part per package will provide the best performances

- If you want to save your package to file, one content package for all the parts may be more convenient if you want to avoid saving many files to disk.


-Any performance issues if we create many editor objects & packages/parts with the same IINKEngine?

>>-From a performance point of view, it is recommended to have one package and one part per editor.

-If you have more editors than CPU cores, the performance will be degraded.


-Our document has hundreds of pages with handwritten text, and we wanted to process each page to get recognition text information.

If we have limitation in creating editor objects, we need to process one after the other which may needs more time hence user may not get the expected results.

>>For you particular use-case, do you want to keep the content package or just do the recognition?

-Indeed, if you just want to do the recognition, we recommend you have one content part and one content package.


>> If our understanding is correct, you are trying to recognize text from already existing notes.If that’s the case, here are a few additional advices that may help you getting the best out of iink SDK:

1.    Provide all strokes at once via the editor pointerEvents API, with doProcessGestures:NO

This ensures best performances and stability and is meant to be used in such ink import use case.

2.    Deactivate text guidelines (before creating Text parts): [engine.configuration setBoolean:@"text.guides.enable" value:NO error:nil];

Existing notes have not been written with these guidelines, so recognition will be better without them.


Best regards,

Olivier



Dear Olivier,

Thanks a lot for your patience in clarifying our queries. It really helped us in improvising the results.


Thanks,

Steve

Do you have some sample code to show the above

Login or Signup to post a comment
  • Support
  • Forums
  • Text
  • Multiple IINKEditor objects can be created with the one IINKEngine?