[{"data":1,"prerenderedAt":1536},["ShallowReactive",2],{"navigation":3,"nav-sdk30":498,"support-index":692,"docs-sdk-3.0-fundamentals-getting-started-setup":767},[4],{"title":5,"path":6,"stem":7,"children":8,"page":40},"Docs","\u002Fdocs","docs",[9,242,320],{"title":10,"path":11,"stem":12,"children":13,"page":40},"Cloud","\u002Fdocs\u002Fcloud","docs\u002Fcloud",[14],{"title":15,"path":16,"stem":17,"children":18,"page":40},"4.5","\u002Fdocs\u002Fcloud\u002F4.5","docs\u002Fcloud\u002F4.5",[19,41,54,79,100,147,172,196,209,234],{"title":20,"path":21,"stem":22,"children":23,"page":40},"Overview","\u002Fdocs\u002Fcloud\u002F4.5\u002Foverview","docs\u002Fcloud\u002F4.5\u002F01.overview",[24,28,32,36],{"title":25,"path":26,"stem":27},"MyScript iink SDK for web-based platform","\u002Fdocs\u002Fcloud\u002F4.5\u002Foverview\u002Fintroduction","docs\u002Fcloud\u002F4.5\u002F01.overview\u002F01.introduction",{"title":29,"path":30,"stem":31},"Choosing between REST or WebSockets","\u002Fdocs\u002Fcloud\u002F4.5\u002Foverview\u002Fhttp-rest-or-websocket","docs\u002Fcloud\u002F4.5\u002F01.overview\u002F02.http-rest-or-websocket",{"title":33,"path":34,"stem":35},"What's new","\u002Fdocs\u002Fcloud\u002F4.5\u002Foverview\u002Fchangelog","docs\u002Fcloud\u002F4.5\u002F01.overview\u002F03.changelog",{"title":37,"path":38,"stem":39},"Migration guide","\u002Fdocs\u002Fcloud\u002F4.5\u002Foverview\u002Fmigration-guide","docs\u002Fcloud\u002F4.5\u002F01.overview\u002F04.migration-guide",false,{"title":42,"path":43,"stem":44,"children":45,"page":40},"Integration","\u002Fdocs\u002Fcloud\u002F4.5\u002Fintegration","docs\u002Fcloud\u002F4.5\u002F02.integration",[46,50],{"title":47,"path":48,"stem":49},"Supported platforms","\u002Fdocs\u002Fcloud\u002F4.5\u002Fintegration\u002Fplatforms","docs\u002Fcloud\u002F4.5\u002F02.integration\u002F01.platforms",{"title":51,"path":52,"stem":53},"Integration levels","\u002Fdocs\u002Fcloud\u002F4.5\u002Fintegration\u002Fintegration-levels","docs\u002Fcloud\u002F4.5\u002F02.integration\u002F02.integration-levels",{"title":55,"path":56,"stem":57,"children":58,"page":40},"Recognition capabilities","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities",[59,63,67,71,75],{"title":60,"path":61,"stem":62},"Recognizers","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities\u002Frecognizers","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities\u002F01.recognizers",{"title":64,"path":65,"stem":66},"Text languages and features","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities\u002Ftext-languages","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities\u002F02.text-languages",{"title":68,"path":69,"stem":70},"Math elements and rules","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities\u002Fmath-elements-and-rules","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities\u002F03.math-elements-and-rules",{"title":72,"path":73,"stem":74},"Shapes and connectors","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities\u002Fdiagram-features","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities\u002F04.diagram-features",{"title":76,"path":77,"stem":78},"Gestures","\u002Fdocs\u002Fcloud\u002F4.5\u002Frecognition-capabilities\u002Fgestures","docs\u002Fcloud\u002F4.5\u002F03.recognition-capabilities\u002F05.gestures",{"title":80,"path":81,"stem":82,"children":83,"page":40},"Interactivity integration","\u002Fdocs\u002Fcloud\u002F4.5\u002Finteractivity-integration","docs\u002Fcloud\u002F4.5\u002F04.interactivity-integration",[84,88,92,96],{"title":85,"path":86,"stem":87},"Content types","\u002Fdocs\u002Fcloud\u002F4.5\u002Finteractivity-integration\u002Fcontent-types","docs\u002Fcloud\u002F4.5\u002F04.interactivity-integration\u002F01.content-types",{"title":89,"path":90,"stem":91},"Interactive features","\u002Fdocs\u002Fcloud\u002F4.5\u002Finteractivity-integration\u002Finteractive-features","docs\u002Fcloud\u002F4.5\u002F04.interactivity-integration\u002F02.interactive-features",{"title":93,"path":94,"stem":95},"Import and export formats","\u002Fdocs\u002Fcloud\u002F4.5\u002Finteractivity-integration\u002Fimport-and-export-formats","docs\u002Fcloud\u002F4.5\u002F04.interactivity-integration\u002F03.import-and-export-formats",{"title":97,"path":98,"stem":99},"Math interactive features","\u002Fdocs\u002Fcloud\u002F4.5\u002Finteractivity-integration\u002Fmath-features","docs\u002Fcloud\u002F4.5\u002F04.interactivity-integration\u002F04.math-features",{"title":101,"path":102,"stem":103,"children":104,"page":40},"iinkTS","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts","docs\u002Fcloud\u002F4.5\u002F05.iinkts",[105,109,113,121,138],{"title":106,"path":107,"stem":108},"Getting started","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Fget-started","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F01.get-started",{"title":110,"path":111,"stem":112},"Canvas","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Fcanvas","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F02.canvas",{"title":114,"path":115,"stem":116,"children":117,"page":40},"Ink Canvas","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Fink-canvas","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F03.ink-canvas",[118],{"title":114,"path":119,"stem":120},"\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Fink-canvas\u002Fink-canvas","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F03.ink-canvas\u002F01.ink-canvas",{"title":122,"path":123,"stem":124,"children":125,"page":40},"Interactive Ink Canvas","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Finteractive-ink-canvas","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F04.interactive-ink-canvas",[126,130,134],{"title":127,"path":128,"stem":129},"Interactive ink canvas","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Finteractive-ink-canvas\u002Finteractive-ink-canvas","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F04.interactive-ink-canvas\u002F01.interactive-ink-canvas",{"title":131,"path":132,"stem":133},"Interactive Math","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Finteractive-ink-canvas\u002Fiicanvas-math","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F04.interactive-ink-canvas\u002F02.iicanvas-math",{"title":135,"path":136,"stem":137},"Using a custom rendering","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Finteractive-ink-canvas\u002Fiicanvas-other-rendering","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F04.interactive-ink-canvas\u002F03.iicanvas-other-rendering",{"title":139,"path":140,"stem":141,"children":142,"page":40},"Reference","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Freference","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F05.reference",[143],{"title":144,"path":145,"stem":146},"Configuration","\u002Fdocs\u002Fcloud\u002F4.5\u002Fiinkts\u002Freference\u002Fconfiguration-iinkts","docs\u002Fcloud\u002F4.5\u002F05.iinkts\u002F05.reference\u002F01.configuration-iinkts",{"title":148,"path":149,"stem":150,"children":151,"page":40},"REST","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest","docs\u002Fcloud\u002F4.5\u002F06.rest",[152,156,160,164,168],{"title":153,"path":154,"stem":155},"MyScript iink SDK Web REST Overview","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest\u002Farchitecture","docs\u002Fcloud\u002F4.5\u002F06.rest\u002F01.architecture",{"title":157,"path":158,"stem":159},"MyScript iink SDK Web REST Recognizer API","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest\u002Fnew-api","docs\u002Fcloud\u002F4.5\u002F06.rest\u002F02.new-api",{"title":161,"path":162,"stem":163},"Recognizer configuration","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest\u002Fconfiguration-recognizer-rest","docs\u002Fcloud\u002F4.5\u002F06.rest\u002F03.configuration-recognizer-rest",{"title":165,"path":166,"stem":167},"MyScript iink SDK Web REST Batch API","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest\u002Flegacy-api","docs\u002Fcloud\u002F4.5\u002F06.rest\u002F04.legacy-api",{"title":169,"path":170,"stem":171},"Batch configuration","\u002Fdocs\u002Fcloud\u002F4.5\u002Frest\u002Fconfiguration-rest","docs\u002Fcloud\u002F4.5\u002F06.rest\u002F05.configuration-rest",{"title":173,"path":174,"stem":175,"children":176,"page":40},"WebSockets","\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets","docs\u002Fcloud\u002F4.5\u002F07.websockets",[177,181,185,189,193],{"title":178,"path":179,"stem":180},"MyScript iink SDK WebSockets API architecture","\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets\u002Farchitecture","docs\u002Fcloud\u002F4.5\u002F07.websockets\u002F01.architecture",{"title":182,"path":183,"stem":184},"Offscreen interactivity mode messages","\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets\u002Fmessages-offscreen","docs\u002Fcloud\u002F4.5\u002F07.websockets\u002F02.messages-offscreen",{"title":186,"path":187,"stem":188},"Offscreen interactivity math messages","\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets\u002Fmath-offscreen","docs\u002Fcloud\u002F4.5\u002F07.websockets\u002F03.math-offscreen",{"title":190,"path":191,"stem":192},"Onscreen interactivity mode messages","\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets\u002Fmessages-onscreen","docs\u002Fcloud\u002F4.5\u002F07.websockets\u002F04.messages-onscreen",{"title":144,"path":194,"stem":195},"\u002Fdocs\u002Fcloud\u002F4.5\u002Fwebsockets\u002Fconfiguration-ws","docs\u002Fcloud\u002F4.5\u002F07.websockets\u002F05.configuration-ws",{"title":197,"path":198,"stem":199,"children":200,"page":40},"Specific","\u002Fdocs\u002Fcloud\u002F4.5\u002Fspecific","docs\u002Fcloud\u002F4.5\u002F08.specific",[201,205],{"title":202,"path":203,"stem":204},"Text recognition candidates","\u002Fdocs\u002Fcloud\u002F4.5\u002Fspecific\u002Ftext-recognition-candidates","docs\u002Fcloud\u002F4.5\u002F08.specific\u002F01.text-recognition-candidates",{"title":206,"path":207,"stem":208},"Recognition resources","\u002Fdocs\u002Fcloud\u002F4.5\u002Fspecific\u002Fcustom-recognition","docs\u002Fcloud\u002F4.5\u002F08.specific\u002F02.custom-recognition",{"title":210,"path":211,"stem":212,"children":213,"page":40},"Server","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver","docs\u002Fcloud\u002F4.5\u002F09.server",[214,218,222,226,230],{"title":215,"path":216,"stem":217},"MyScript Server Installation Preamble and Prerequisites","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver\u002Fpreamble-prerequisites","docs\u002Fcloud\u002F4.5\u002F09.server\u002F01.preamble-prerequisites",{"title":219,"path":220,"stem":221},"MyScript Server Monoserver Installation Documentation","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver\u002Fmonoserver-installation","docs\u002Fcloud\u002F4.5\u002F09.server\u002F02.monoserver-installation",{"title":223,"path":224,"stem":225},"MyScript Server Production Installation Documentation","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver\u002Fproduction-installation","docs\u002Fcloud\u002F4.5\u002F09.server\u002F03.production-installation",{"title":227,"path":228,"stem":229},"MyScript Server Migration Guide","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver\u002Fserver-migration-guide","docs\u002Fcloud\u002F4.5\u002F09.server\u002F04.server-migration-guide",{"title":231,"path":232,"stem":233},"MyScript Server Administration Guide","\u002Fdocs\u002Fcloud\u002F4.5\u002Fserver\u002Fadministration-guide","docs\u002Fcloud\u002F4.5\u002F09.server\u002F05.administration-guide",{"title":139,"path":235,"stem":236,"children":237,"page":40},"\u002Fdocs\u002Fcloud\u002F4.5\u002Freference","docs\u002Fcloud\u002F4.5\u002F10.reference",[238],{"title":239,"path":240,"stem":241},"JIIX format reference","\u002Fdocs\u002Fcloud\u002F4.5\u002Freference\u002Fjiix","docs\u002Fcloud\u002F4.5\u002F10.reference\u002F01.jiix",{"title":243,"path":244,"stem":245,"children":246,"page":40},"Concepts","\u002Fdocs\u002Fconcepts","docs\u002Fconcepts",[247,250,254],{"title":20,"path":248,"stem":249},"\u002Fdocs\u002Fconcepts\u002Foverview","docs\u002Fconcepts\u002F01.overview",{"title":251,"path":252,"stem":253},"Glossary","\u002Fdocs\u002Fconcepts\u002Fglossary","docs\u002Fconcepts\u002F02.glossary",{"title":255,"path":256,"stem":257,"children":258,"page":40},"Fundamentals","\u002Fdocs\u002Fconcepts\u002Ffundamentals","docs\u002Fconcepts\u002F03.fundamentals",[259,263,292,312],{"title":260,"path":261,"stem":262},"OCR vs digital ink recognition","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fdigital-ink-vs-ocr","docs\u002Fconcepts\u002F03.fundamentals\u002F01.digital-ink-vs-ocr",{"title":264,"path":265,"stem":266,"children":267,"page":40},"Ink interpretation","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation",[268,272,276,280,284,288],{"title":269,"path":270,"stem":271},"Ink processing","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Fink-interpretation","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F01.ink-interpretation",{"title":273,"path":274,"stem":275},"Recognition features","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Fcontent-types","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F02.content-types",{"title":277,"path":278,"stem":279},"Ink classification","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Fink-classification","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F03.ink-classification",{"title":281,"path":282,"stem":283},"What are batch mode and incremental mode?","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Fbatch-mode","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F04.batch-mode",{"title":285,"path":286,"stem":287},"Gestures and context","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Fcontext-gestures","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F05.context-gestures",{"title":289,"path":290,"stem":291},"What is interactivity","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fink-interpretation\u002Finteractive-ink","docs\u002Fconcepts\u002F03.fundamentals\u002F02.ink-interpretation\u002F06.interactive-ink",{"title":293,"path":294,"stem":295,"children":296,"page":40},"Rendering-driven interactivity","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity","docs\u002Fconcepts\u002F03.fundamentals\u002F03.rendering-driven-interactivity",[297,301,304,308],{"title":298,"path":299,"stem":300},"Ink capture","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity\u002Fink-capture","docs\u002Fconcepts\u002F03.fundamentals\u002F03.rendering-driven-interactivity\u002F01.ink-capture",{"title":76,"path":302,"stem":303},"\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity\u002Fediting-gestures","docs\u002Fconcepts\u002F03.fundamentals\u002F03.rendering-driven-interactivity\u002F02.editing-gestures",{"title":305,"path":306,"stem":307},"Smart tools","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity\u002Fsmart-tools","docs\u002Fconcepts\u002F03.fundamentals\u002F03.rendering-driven-interactivity\u002F03.smart-tools",{"title":309,"path":310,"stem":311},"Responsive and productive","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity\u002Fresponsive-layout","docs\u002Fconcepts\u002F03.fundamentals\u002F03.rendering-driven-interactivity\u002F04.responsive-layout",{"title":313,"path":314,"stem":315,"children":316,"page":40},"Handwriting generation","\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fhandwriting-generation","docs\u002Fconcepts\u002F03.fundamentals\u002F04.handwriting-generation",[317],{"title":313,"path":318,"stem":319},"\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Fhandwriting-generation\u002Fhandwriting-generation","docs\u002Fconcepts\u002F03.fundamentals\u002F04.handwriting-generation\u002F01.handwriting-generation",{"title":321,"path":322,"stem":323,"children":324,"page":40},"Sdk","\u002Fdocs\u002Fsdk","docs\u002Fsdk",[325],{"title":15,"path":326,"stem":327,"children":328,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5","docs\u002Fsdk\u002F4.5",[329,333,336,339,349,368,381,393,401,417,426,463,467,470,474,477,484],{"title":330,"path":331,"stem":332},"About MyScript iink SDK","\u002Fdocs\u002Fsdk\u002F4.5\u002Fabout","docs\u002Fsdk\u002F4.5\u002F01.about",{"title":33,"path":334,"stem":335},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fchangelog","docs\u002Fsdk\u002F4.5\u002F02.changelog",{"title":37,"path":337,"stem":338},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fmigration-guide","docs\u002Fsdk\u002F4.5\u002F03.migration-guide",{"title":42,"path":340,"stem":341,"children":342,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fintegration","docs\u002Fsdk\u002F4.5\u002F04.integration",[343,346],{"title":47,"path":344,"stem":345},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fintegration\u002Fplatforms","docs\u002Fsdk\u002F4.5\u002F04.integration\u002F01.platforms",{"title":51,"path":347,"stem":348},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fintegration\u002Fintegration-levels","docs\u002Fsdk\u002F4.5\u002F04.integration\u002F02.integration-levels",{"title":55,"path":350,"stem":351,"children":352,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities",[353,356,359,362,365],{"title":60,"path":354,"stem":355},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities\u002Frecognizers","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities\u002F01.recognizers",{"title":64,"path":357,"stem":358},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities\u002Ftext-languages","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities\u002F02.text-languages",{"title":68,"path":360,"stem":361},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities\u002Fmath-elements-and-rules","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities\u002F03.math-elements-and-rules",{"title":72,"path":363,"stem":364},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities\u002Fdiagram-features","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities\u002F04.diagram-features",{"title":76,"path":366,"stem":367},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognition-capabilities\u002Fgestures","docs\u002Fsdk\u002F4.5\u002F05.recognition-capabilities\u002F05.gestures",{"title":80,"path":369,"stem":370,"children":371,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity-integration","docs\u002Fsdk\u002F4.5\u002F06.interactivity-integration",[372,375,378],{"title":85,"path":373,"stem":374},"\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity-integration\u002Fcontent-types","docs\u002Fsdk\u002F4.5\u002F06.interactivity-integration\u002F01.content-types",{"title":89,"path":376,"stem":377},"\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity-integration\u002Finteractive-features","docs\u002Fsdk\u002F4.5\u002F06.interactivity-integration\u002F02.interactive-features",{"title":93,"path":379,"stem":380},"\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity-integration\u002Fimport-and-export-formats","docs\u002Fsdk\u002F4.5\u002F06.interactivity-integration\u002F03.import-and-export-formats",{"title":106,"path":382,"stem":383,"children":384,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fgetting-started","docs\u002Fsdk\u002F4.5\u002F07.getting-started",[385,389],{"title":386,"path":387,"stem":388},"Setup","\u002Fdocs\u002Fsdk\u002F4.5\u002Fgetting-started\u002Fsetup","docs\u002Fsdk\u002F4.5\u002F07.getting-started\u002F01.setup",{"title":390,"path":391,"stem":392},"Instantiate Engine","\u002Fdocs\u002Fsdk\u002F4.5\u002Fgetting-started\u002Finteractive-ink-runtime","docs\u002Fsdk\u002F4.5\u002F07.getting-started\u002F02.interactive-ink-runtime",{"title":394,"path":395,"stem":396,"children":397,"page":40},"Recognizer","\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognizer","docs\u002Fsdk\u002F4.5\u002F08.recognizer",[398],{"title":60,"path":399,"stem":400},"\u002Fdocs\u002Fsdk\u002F4.5\u002Frecognizer\u002Frecognizers","docs\u002Fsdk\u002F4.5\u002F08.recognizer\u002F01.recognizers",{"title":402,"path":403,"stem":404,"children":405,"page":40},"Interactivity specific","\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity","docs\u002Fsdk\u002F4.5\u002F09.interactivity",[406,410,413],{"title":407,"path":408,"stem":409},"Storage","\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity\u002Fstorage","docs\u002Fsdk\u002F4.5\u002F09.interactivity\u002F01.storage",{"title":97,"path":411,"stem":412},"\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity\u002Fmath-features","docs\u002Fsdk\u002F4.5\u002F09.interactivity\u002F02.math-features",{"title":414,"path":415,"stem":416},"Integrate with the undo\u002Fredo stack of your application","\u002Fdocs\u002Fsdk\u002F4.5\u002Finteractivity\u002Fcombined-undo-redo-stacks","docs\u002Fsdk\u002F4.5\u002F09.interactivity\u002F03.combined-undo-redo-stacks",{"title":418,"path":419,"stem":420,"children":421,"page":40},"OffScreenEditor specific","\u002Fdocs\u002Fsdk\u002F4.5\u002Foffscreen-editor","docs\u002Fsdk\u002F4.5\u002F10.offscreen-editor",[422],{"title":423,"path":424,"stem":425},"OffscreenEditor","\u002Fdocs\u002Fsdk\u002F4.5\u002Foffscreen-editor\u002Foff-screen-usage","docs\u002Fsdk\u002F4.5\u002F10.offscreen-editor\u002F01.off-screen-usage",{"title":427,"path":428,"stem":429,"children":430,"page":40},"Editor specific","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor","docs\u002Fsdk\u002F4.5\u002F11.editor",[431,435,439,443,447,451,455,459],{"title":432,"path":433,"stem":434},"Rendering","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Frendering","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F01.rendering",{"title":436,"path":437,"stem":438},"Editing","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fediting","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F02.editing",{"title":440,"path":441,"stem":442},"Tool controller","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Ftool-controller","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F03.tool-controller",{"title":444,"path":445,"stem":446},"Selection and block","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fblock-selection-management","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F04.block-selection-management",{"title":448,"path":449,"stem":450},"Conversion","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fconversion","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F05.conversion",{"title":452,"path":453,"stem":454},"Zooming and scrolling","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fzooming-and-scrolling","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F06.zooming-and-scrolling",{"title":456,"path":457,"stem":458},"Styling","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fstyling","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F07.styling",{"title":460,"path":461,"stem":462},"Custom inking","\u002Fdocs\u002Fsdk\u002F4.5\u002Feditor\u002Fcustom-inking","docs\u002Fsdk\u002F4.5\u002F11.editor\u002F08.custom-inking",{"title":464,"path":465,"stem":466},"Result, import and export","\u002Fdocs\u002Fsdk\u002F4.5\u002Fimport-and-export","docs\u002Fsdk\u002F4.5\u002F12.import-and-export",{"title":202,"path":468,"stem":469},"\u002Fdocs\u002Fsdk\u002F4.5\u002Ftext-recognition-candidates","docs\u002Fsdk\u002F4.5\u002F13.text-recognition-candidates",{"title":471,"path":472,"stem":473},"Error management","\u002Fdocs\u002Fsdk\u002F4.5\u002Ferror-management","docs\u002Fsdk\u002F4.5\u002F14.error-management",{"title":206,"path":475,"stem":476},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fcustom-recognition","docs\u002Fsdk\u002F4.5\u002F15.custom-recognition",{"title":313,"path":478,"stem":479,"children":480,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fhandwriting-generation","docs\u002Fsdk\u002F4.5\u002F16.handwriting-generation",[481],{"title":313,"path":482,"stem":483},"\u002Fdocs\u002Fsdk\u002F4.5\u002Fhandwriting-generation\u002Fhandwriting-generation","docs\u002Fsdk\u002F4.5\u002F16.handwriting-generation\u002F01.handwriting-generation",{"title":139,"path":485,"stem":486,"children":487,"page":40},"\u002Fdocs\u002Fsdk\u002F4.5\u002Freference","docs\u002Fsdk\u002F4.5\u002F17.reference",[488,491,494],{"title":144,"path":489,"stem":490},"\u002Fdocs\u002Fsdk\u002F4.5\u002Freference\u002Fconfiguration","docs\u002Fsdk\u002F4.5\u002F17.reference\u002F01.configuration",{"title":239,"path":492,"stem":493},"\u002Fdocs\u002Fsdk\u002F4.5\u002Freference\u002Fjiix","docs\u002Fsdk\u002F4.5\u002F17.reference\u002F02.jiix",{"title":495,"path":496,"stem":497},"Styling reference","\u002Fdocs\u002Fsdk\u002F4.5\u002Freference\u002Fstyling","docs\u002Fsdk\u002F4.5\u002F17.reference\u002F03.styling",[499],{"title":5,"path":6,"stem":7,"children":500,"page":40},[501],{"title":321,"path":322,"stem":323,"children":502,"page":40},[503],{"title":504,"navTitle":505,"icon":505,"path":506,"stem":507,"children":508,"page":40},"3",null,"\u002Fdocs\u002Fsdk\u002F3.0","docs\u002Fsdk\u002F3.0",[509,514,519,523,536,560,581,638,676],{"title":330,"path":510,"stem":511,"navTitle":512,"icon":513},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fabout","docs\u002Fsdk\u002F3.0\u002F01.about","About","i-tabler-info-circle",{"title":515,"path":516,"stem":517,"navTitle":33,"icon":518},"New in 3.0","\u002Fdocs\u002Fsdk\u002F3.0\u002Fchangelog","docs\u002Fsdk\u002F3.0\u002F02.changelog","i-tabler-bell-ringing",{"title":37,"path":520,"stem":521,"navTitle":37,"icon":522},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fmigration-guide","docs\u002Fsdk\u002F3.0\u002F03.migration-guide","i-tabler-gps",{"title":42,"navTitle":505,"icon":505,"path":524,"stem":525,"children":526,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fintegration","docs\u002Fsdk\u002F3.0\u002F04.integration",[527,532],{"title":47,"path":528,"stem":529,"navTitle":530,"icon":531},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fintegration\u002Fplatforms","docs\u002Fsdk\u002F3.0\u002F04.integration\u002F01.platforms","Platforms","i-tabler-device-laptop",{"title":51,"path":533,"stem":534,"navTitle":51,"icon":535},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fintegration\u002Fintegration-levels","docs\u002Fsdk\u002F3.0\u002F04.integration\u002F02.integration-levels","i-tabler-stack-2",{"title":55,"navTitle":505,"icon":505,"path":537,"stem":538,"children":539,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities",[540,544,548,552,556],{"title":60,"path":541,"stem":542,"navTitle":505,"icon":543},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities\u002Frecognizers","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities\u002F01.recognizers","i-tabler-text-scan-2",{"title":64,"path":545,"stem":546,"navTitle":64,"icon":547},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities\u002Ftext-languages","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities\u002F02.text-languages","i-tabler-language",{"title":68,"path":549,"stem":550,"navTitle":68,"icon":551},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities\u002Fmath-elements-and-rules","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities\u002F03.math-elements-and-rules","i-tabler-math",{"title":72,"path":553,"stem":554,"navTitle":72,"icon":555},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities\u002Fdiagram-features","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities\u002F04.diagram-features","i-tabler-circle-square",{"title":76,"path":557,"stem":558,"navTitle":505,"icon":559},"\u002Fdocs\u002Fsdk\u002F3.0\u002Frecognition-capabilities\u002Fgestures","docs\u002Fsdk\u002F3.0\u002F05.recognition-capabilities\u002F05.gestures","i-tabler-hand-finger",{"title":80,"navTitle":505,"icon":505,"path":561,"stem":562,"children":563,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Finteractivity-integration","docs\u002Fsdk\u002F3.0\u002F06.interactivity-integration",[564,568,572,577],{"title":85,"path":565,"stem":566,"navTitle":85,"icon":567},"\u002Fdocs\u002Fsdk\u002F3.0\u002Finteractivity-integration\u002Fcontent-types","docs\u002Fsdk\u002F3.0\u002F06.interactivity-integration\u002F01.content-types","i-tabler-eye",{"title":89,"path":569,"stem":570,"navTitle":89,"icon":571},"\u002Fdocs\u002Fsdk\u002F3.0\u002Finteractivity-integration\u002Finteractive-features","docs\u002Fsdk\u002F3.0\u002F06.interactivity-integration\u002F02.interactive-features","i-tabler-bolt",{"title":93,"path":573,"stem":574,"navTitle":575,"icon":576},"\u002Fdocs\u002Fsdk\u002F3.0\u002Finteractivity-integration\u002Fimport-and-export-formats","docs\u002Fsdk\u002F3.0\u002F06.interactivity-integration\u002F03.import-and-export-formats","Import and export","i-tabler-arrows-left-right",{"title":97,"path":578,"stem":579,"navTitle":97,"icon":580},"\u002Fdocs\u002Fsdk\u002F3.0\u002Finteractivity-integration\u002Fmath-features","docs\u002Fsdk\u002F3.0\u002F06.interactivity-integration\u002F04.math-features","i-tabler-calculator",{"title":255,"navTitle":505,"icon":505,"path":582,"stem":583,"children":584,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals","docs\u002Fsdk\u002F3.0\u002F07.fundamentals",[585,598,602,606,610,614,619,623,626,630,634],{"title":586,"navTitle":505,"icon":505,"path":587,"stem":588,"children":589,"page":40},"Getting Started","\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fgetting-started","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F01.getting-started",[590,594],{"title":386,"path":591,"stem":592,"navTitle":505,"icon":593},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fgetting-started\u002Fsetup","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F01.getting-started\u002F01.setup","i-tabler-direction-sign",{"title":595,"path":596,"stem":597,"navTitle":505,"icon":593},"Interactive Ink runtime","\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fgetting-started\u002Finteractive-ink-runtime","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F01.getting-started\u002F02.interactive-ink-runtime",{"title":407,"path":599,"stem":600,"navTitle":505,"icon":601},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fstorage","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F02.storage","i-tabler-file-database",{"title":432,"path":603,"stem":604,"navTitle":505,"icon":605},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Frendering","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F03.rendering","i-tabler-app-window",{"title":440,"path":607,"stem":608,"navTitle":505,"icon":609},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Ftool-controller","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F04.tool-controller","i-tabler-adjustments",{"title":436,"path":611,"stem":612,"navTitle":505,"icon":613},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fediting","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F05.editing","i-tabler-edit",{"title":615,"path":616,"stem":617,"navTitle":505,"icon":618},"Selection and block management","\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fblock-selection-management","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F06.block-selection-management","i-tabler-pointer",{"title":448,"path":620,"stem":621,"navTitle":505,"icon":622},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fconversion","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F07.conversion","i-tabler-sparkles",{"title":575,"path":624,"stem":625,"navTitle":505,"icon":576},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fimport-and-export","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F08.import-and-export",{"title":452,"path":627,"stem":628,"navTitle":505,"icon":629},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fzooming-and-scrolling","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F09.zooming-and-scrolling","i-tabler-zoom-pan",{"title":456,"path":631,"stem":632,"navTitle":505,"icon":633},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fstyling","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F10.styling","i-tabler-palette",{"title":471,"path":635,"stem":636,"navTitle":505,"icon":637},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Ferror-management","docs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F11.error-management","i-tabler-bug",{"title":197,"navTitle":505,"icon":505,"path":639,"stem":640,"children":641,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific","docs\u002Fsdk\u002F3.0\u002F08.specific",[642,646,651,655,659,663,668,673],{"title":202,"path":643,"stem":644,"navTitle":505,"icon":645},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Ftext-recognition-candidates","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F01.text-recognition-candidates","i-tabler-tags",{"title":647,"path":648,"stem":649,"navTitle":505,"icon":650},"Off-screen usage","\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Foff-screen-usage","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F02.off-screen-usage","i-tabler-stack-backward",{"title":652,"path":653,"stem":654,"navTitle":505,"icon":547},"Languages restricted to non-interactive mode","\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Fnon-interactive-languages","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F03.non-interactive-languages",{"title":460,"path":656,"stem":657,"navTitle":505,"icon":658},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Fcustom-inking","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F04.custom-inking","i-tabler-brush",{"title":206,"path":660,"stem":661,"navTitle":505,"icon":662},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Fcustom-recognition","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F05.custom-recognition","i-tabler-file-code",{"title":414,"path":664,"stem":665,"navTitle":666,"icon":667},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Fcombined-undo-redo-stacks","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F06.combined-undo-redo-stacks","Combined undo\u002Fredo stacks","i-tabler-arrow-back-up",{"title":669,"path":670,"stem":671,"navTitle":505,"icon":672},"Interactive White Board","\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Finteractive-white-board","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F07.interactive-white-board","i-tabler-presentation",{"title":60,"path":674,"stem":675,"navTitle":505,"icon":543},"\u002Fdocs\u002Fsdk\u002F3.0\u002Fspecific\u002Frecognizers","docs\u002Fsdk\u002F3.0\u002F08.specific\u002F08.recognizers",{"title":139,"navTitle":505,"icon":505,"path":677,"stem":678,"children":679,"page":40},"\u002Fdocs\u002Fsdk\u002F3.0\u002Freference","docs\u002Fsdk\u002F3.0\u002F09.reference",[680,684,689],{"title":144,"path":681,"stem":682,"navTitle":505,"icon":683},"\u002Fdocs\u002Fsdk\u002F3.0\u002Freference\u002Fconfiguration","docs\u002Fsdk\u002F3.0\u002F09.reference\u002F01.configuration","i-tabler-settings",{"title":239,"path":685,"stem":686,"navTitle":687,"icon":688},"\u002Fdocs\u002Fsdk\u002F3.0\u002Freference\u002Fjiix","docs\u002Fsdk\u002F3.0\u002F09.reference\u002F02.jiix","JIIX","i-tabler-braces",{"title":495,"path":690,"stem":691,"navTitle":456,"icon":633},"\u002Fdocs\u002Fsdk\u002F3.0\u002Freference\u002Fstyling","docs\u002Fsdk\u002F3.0\u002F09.reference\u002F03.styling",{"id":693,"title":694,"body":695,"canonicalPath":505,"description":759,"extension":760,"icon":522,"meta":761,"navTitle":20,"navigation":762,"path":763,"resolveKey":505,"resolveVersion":505,"seo":764,"stem":765,"__hash__":766},"support\u002Fsupport\u002F01.index.md","Support",{"type":696,"value":697,"toc":755},"minimark",[698,702],[699,700,701],"p",{},"Find answers to common questions about integrating the iink SDK and MyScript Cloud APIs. Browse the topics below or reach out on the community forum.",[703,704,705,714,722,730,738,747],"card-group",{},[706,707,711],"card",{"icon":708,"title":709,"to":710},"i-tabler-package","Recognition assets","\u002Fsupport\u002Frecognition-assets\u002F",[699,712,713],{},"Download base assets and build custom resources to fine-tune the recognition.",[706,715,719],{"icon":716,"title":717,"to":718},"i-tabler-key","On-device license management","\u002Fsupport\u002Fon-device\u002Fon-device-license-management\u002F",[699,720,721],{},"Manage licenses for applications embedding the on-device iink SDK.",[706,723,727],{"icon":724,"title":725,"to":726},"i-tabler-user-circle","Registering with MyScript Cloud","\u002Fsupport\u002Fcloud\u002Fregistering-myscript-cloud\u002F",[699,728,729],{},"Create a Cloud account and obtain the keys to call our recognition APIs.",[706,731,735],{"icon":732,"title":733,"to":734},"i-tabler-rocket","Being production ready","\u002Fsupport\u002Fcloud\u002Fbeing-production-ready\u002F",[699,736,737],{},"Best practices and quotas to ship your iink Cloud integration to production.",[706,739,744],{"icon":740,"title":741,"to":742,"target":743},"i-tabler-message-circle","Forums","https:\u002F\u002Fdeveloper-support.myscript.com\u002Fsupport\u002Flogin","_blank",[699,745,746],{},"Ask questions and get answers from the MyScript developer community.",[706,748,752],{"icon":749,"title":750,"to":751,"target":743},"i-tabler-mail","Contact us","https:\u002F\u002Fwww.myscript.com\u002Fcontact\u002F",[699,753,754],{},"Can't find what you're looking for? Reach out to our team.",{"title":756,"searchDepth":757,"depth":757,"links":758},"",3,[],"MyScript Developer Support hub","md",{},true,"\u002Fsupport",{"title":694,"description":759},"support\u002F01.index","jENFmcn55y_8r3_6pH5xxlH1dZJBwoAuq9F7gXQtow8",{"path":591,"page":768},{"id":769,"title":386,"body":770,"canonicalPath":1529,"description":1530,"extension":760,"icon":593,"meta":1531,"navTitle":505,"navigation":762,"path":591,"resolveKey":1532,"resolveVersion":1533,"seo":1534,"stem":592,"__hash__":1535},"sdk30\u002Fdocs\u002Fsdk\u002F3.0\u002F07.fundamentals\u002F01.getting-started\u002F01.setup.md",{"type":696,"value":771,"toc":1518},[772,775,780,895,899,902,917,954,965,972,981,985,993,1005,1010,1059,1063,1079,1084,1088,1449,1453,1456,1459,1507,1512],[699,773,774],{},"MyScript iink SDK makes it easy to get started.\nThis page helps you set up a development environment, get a certificate and play with provided example applications.",[776,777,779],"h2",{"id":778},"setting-up-a-development-environment","Setting up a development environment",[781,782,783,810,861,878],"partial",{},[784,785,786,789],"template",{"v-slot:java":756},[699,787,788],{},"To develop with iink SDK for Android, you will need:",[790,791,792,802],"ul",{},[793,794,795],"li",{},[796,797,801],"a",{"href":798,"rel":799},"https:\u002F\u002Fdeveloper.android.com\u002Fstudio\u002Findex.html",[800],"nofollow","Android Studio",[793,803,804,809],{},[796,805,808],{"href":806,"rel":807},"https:\u002F\u002Fgit-scm.com\u002F",[800],"Git"," (to clone the GitHub example repository)",[784,811,812,815,818,836,843],{"v-slot:cpp":756},[699,813,814],{},"To develop with iink SDK C++ API, you need a C++ compiler.",[699,816,817],{},"To run the example or use the provided reference UI implementation, you will need:",[790,819,820,828],{},[793,821,822,827],{},[796,823,826],{"href":824,"rel":825},"https:\u002F\u002Fwww.qt.io\u002F",[800],"Qt"," 6.5.2 or higher 6.5 version.",[793,829,830,835],{},[796,831,834],{"href":832,"rel":833},"https:\u002F\u002Fcmake.org\u002F",[800],"CMake"," 3.16 or higher",[699,837,838,839,842],{},"As the example project is based on a ",[840,841,834],"code",{}," file, it is not tied to the use of a particular IDE. We recommend:",[790,844,845,853],{},[793,846,847,852],{},[796,848,851],{"href":849,"rel":850},"https:\u002F\u002Fdeveloper.apple.com\u002Fxcode\u002F",[800],"Xcode"," for Mac platforms",[793,854,855,860],{},[796,856,859],{"href":857,"rel":858},"https:\u002F\u002Fvisualstudio.microsoft.com\u002F",[800],"Visual Studio"," for Windows platforms",[784,862,863,866],{"v-slot:csharp":756},[699,864,865],{},"To develop with iink SDK for Windows, you will need:",[790,867,868,873],{},[793,869,870],{},[796,871,859],{"href":857,"rel":872},[800],[793,874,875,809],{},[796,876,808],{"href":806,"rel":877},[800],[784,879,880,883],{"v-slot:swift":756},[699,881,882],{},"To develop with iink SDK for iOS, you will need:",[790,884,885,890],{},[793,886,887],{},[796,888,851],{"href":849,"rel":889},[800],[793,891,892,809],{},[796,893,808],{"href":806,"rel":894},[800],[776,896,898],{"id":897},"example-applications","Example applications",[699,900,901],{},"MyScript iink SDK comes with example applications illustrating how to use key APIs:",[790,903,904,911],{},[793,905,906,907,910],{},"The ",[840,908,909],{},"GetStarted"," example is a good starting point to discover MyScript iink SDK.",[793,912,906,913,916],{},[840,914,915],{},"Demo"," example is a more advanced integration that you can refer too, once familiar with MyScript iink SDK.",[781,918,919,930,946],{},[784,920,921],{"v-slot:swift":756},[699,922,923,924,929],{},"The code is available on ",[796,925,928],{"href":926,"rel":927},"https:\u002F\u002Fgithub.com\u002Fmyscript\u002Finteractive-ink-examples-ios",[800],"GitHub",".",[784,931,932],{"v-slot:csharp":756},[699,933,934,935,940,941,929],{},"The code is available on GitHub for both ",[796,936,939],{"href":937,"rel":938},"https:\u002F\u002Fgithub.com\u002Fmyscript\u002Finteractive-ink-examples-uwp",[800],"UWP"," and\n",[796,942,945],{"href":943,"rel":944},"https:\u002F\u002Fgithub.com\u002Fmyscript\u002Finteractive-ink-examples-wpf",[800],"WPF",[784,947,948],{"v-slot:java":756},[699,949,923,950,929],{},[796,951,928],{"href":952,"rel":953},"https:\u002F\u002Fgithub.com\u002Fmyscript\u002Finteractive-ink-examples-android",[800],[955,956,958],"callout",{"color":957},"secondary",[699,959,960,961,929],{},"A custom compilation step will download the minimal set of recognition assets required for the example to run. More assets (e.g. to support\nother recognition languages) can be downloaded from ",[796,962,964],{"href":963},"\u002Fsupport\u002Frecognition-assets","MyScript Developer Portal",[699,966,967,968,971],{},"A reference implementation for the platform-specific integration layer can be found alongside the examples. It covers aspects such as ",[796,969,970],{"href":603},"rendering","\nthat the low-level iink SDK does not provide out-of-the-box for flexibility and portability reasons.",[699,973,974,975,980],{},"The source code of both the examples and the reference implementation is released under the ",[796,976,979],{"href":977,"rel":978},"https:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0",[800],"Apache 2.0 license",".\nYou can reuse it into your own projects without any particular restriction.",[776,982,984],{"id":983},"getting-a-certificate","Getting a certificate",[699,986,987,988,992],{},"A certificate is a binary \"key\" provided by MyScript that is ",[989,990,991],"strong",{},"required"," to enable iink SDK in an application.",[790,994,995,998],{},[793,996,997],{},"MyScript-provided examples expect it to be located at a specific location (see instructions below).",[793,999,1000,1001,929],{},"For your own application, you can place it where you want, provided that it is accessible to ",[796,1002,1004],{"href":1003},"\u002Fdocs\u002Fsdk\u002F3.0\u002Ffundamentals\u002Fgetting-started\u002Finteractive-ink-runtime#engine-creation","instantiate the iink runtime",[1006,1007,1009],"h3",{"id":1008},"developer-portal-certificates","Developer Portal certificates",[781,1011,1012,1023,1048,1054],{},[784,1013,1014],{"v-slot:cpp":756},[955,1015,1016],{"color":957},[699,1017,1018,1019,929],{},"C++ API certificates are only available ",[796,1020,1022],{"href":1021},"..\u002F..\u002F..\u002F..\u002F..\u002F..\u002F..\u002Fcontact","on demand",[790,1024,1025,1041],{},[793,1026,1027,1028,1032,1033,1036,1037,1040],{},"If you have just registered with ",[796,1029,964],{"href":1030,"rel":1031},"https:\u002F\u002Fdeveloper.myscript.com",[800],", you should have received a certificate by mail that will let you run the provided\n",[989,1034,1035],{},"GetStarted and Demo examples",". The certificate comes embedded ",[989,1038,1039],{},"in a source file"," that you should include in your project.",[793,1042,1043,1044,1047],{},"If not - or to activate iink SDK with your own applications - please follow the ",[796,1045,1046],{"href":718},"on-device license management"," instructions.",[699,1049,1050,1051,929],{},"More details on certificates and license management can be found in the ",[796,1052,1053],{"href":718},"dedicated support section",[955,1055,1056],{"color":957},[699,1057,1058],{},"Developer Portal certificates are specifically generated for each app identifier. You cannot directly reuse the certificate inside your own application.",[1006,1060,1062],{"id":1061},"partner-certificates","Partner certificates",[699,1064,1065,1066,1068,1069,1072,1073,1078],{},"It comes embedded ",[989,1067,1039],{}," contained in the ",[840,1070,1071],{},"\u003Ccustomer_name>.vo_iink_sdk.zip"," package that you can download from your account on the ",[796,1074,1077],{"href":1075,"rel":1076},"https:\u002F\u002Fpartner.myscript.com\u002F",[800],"MyScript Partners website",".\nYou should extract the certificate source file from this .zip archive to include it in your project.",[955,1080,1081],{"color":957},[699,1082,1083],{},"If you are currently evaluating the technology, your certificate may be time-limited. Make sure to apply for an unlimited certificate to deploy\nyour solution to production.",[776,1085,1087],{"id":1086},"playing-with-the-examples","Playing with the examples",[781,1089,1090,1176,1304,1380],{},[784,1091,1092,1095,1101,1110,1132,1142,1164],{"v-slot:java":756},[699,1093,1094],{},"To run them, just follow the following instructions:",[699,1096,1097,1100],{},[989,1098,1099],{},"Step 1:"," Clone the MyScript Git repository containing the examples for the Android platform and navigate to the root of the folder containing the\napplications:",[1102,1103,1108],"pre",{"className":1104,"code":1106,"language":1107},[1105],"language-text","git clone https:\u002F\u002Fgithub.com\u002FMyScript\u002Finteractive-ink-examples-android.git\ncd interactive-ink-examples-android\n","text",[840,1109,1106],{"__ignoreMap":756},[699,1111,1112,1115,1116,1119,1120,1123,1124,1127,1128,929],{},[989,1113,1114],{},"Step 2:"," Replace the ",[840,1117,1118],{},"MyCertificate.java"," file in the ",[840,1121,1122],{},"GetStarted\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fmyscript\u002Fcertificate"," or in the ",[840,1125,1126],{},"Demo\u002Fsrc\u002Fmain\u002Fjava\u002Fcom\u002Fmyscript\u002Fcertificate","\ndirectory with ",[796,1129,1131],{"href":1130},"#getting-a-certificate","your certificate",[699,1133,1134,1137,1138,1141],{},[989,1135,1136],{},"Step 3:"," Open the ",[840,1139,1140],{},"interactive-ink-examples-android"," directory as an existing Android Studio project. The Gradle dependencies should be grabbed and the\nproject should compile with success.",[955,1143,1145,1156],{"color":1144},"warning",[699,1146,1147,1148,1151,1152,1155],{},"If you encounter build errors of the form ",[840,1149,1150],{},"No version of NDK matched the requested version",", please install the requested NDK version or update the one referenced in ",[840,1153,1154],{},"build.gradle"," to match your installed NDK version.",[699,1157,1158,1159,929],{},"You can follow ",[796,1160,1163],{"href":1161,"rel":1162},"https:\u002F\u002Fdeveloper.android.com\u002Fstudio\u002Fprojects\u002Finstall-ndk#specific-version",[800],"these instructions",[699,1165,1166,1169,1170,1172,1173,1175],{},[989,1167,1168],{},"Step 4:"," Run the ",[840,1171,909],{}," or the ",[840,1174,915],{}," target.",[784,1177,1178,1181,1186,1245,1254,1275,1283,1295],{"v-slot:cpp":756},[699,1179,1180],{},"To run it, just follow the following instructions:",[699,1182,1183,1185],{},[989,1184,1099],{}," Unzip the following libraries at the same location:",[790,1187,1188,1193,1198,1203,1208,1213,1218,1232],{},[793,1189,1190],{},[840,1191,1192],{},"myscript-iink-api-cpp.zip",[793,1194,1195],{},[840,1196,1197],{},"myscript-iink-examples-qt.zip",[793,1199,1200],{},[840,1201,1202],{},"myscript-iink-recognition-diagram.zip",[793,1204,1205],{},[840,1206,1207],{},"myscript-iink-recognition-math.zip",[793,1209,1210],{},[840,1211,1212],{},"myscript-iink-recognition-raw-content.zip",[793,1214,1215],{},[840,1216,1217],{},"myscript-iink-recognition-text-en_US.zip",[793,1219,1220,1223,1224,1227,1228,1231],{},[840,1221,1222],{},"myscript-iink-lib-mac.zip",", ",[840,1225,1226],{},"myscript-iink-lib-lin.zip"," or ",[840,1229,1230],{},"myscript-iink-lib-win.zip"," depending on your platform.",[793,1233,1234,1236],{},[840,1235,1071],{},[955,1237,1238],{"color":1144},[699,1239,1240,1241,1244],{},"On macOS, when uncompressing the libraries, we recommend you to use the following command line: ",[840,1242,1243],{},"find . -name \"*.zip\" -exec unzip {} \";\"",". This\nshould avoid some issues with the default unarchiver that will lose files when encountering duplicated folders.",[699,1246,1247,1249,1250,1253],{},[989,1248,1114],{}," Create a ",[840,1251,1252],{},"_build"," folder in that same location. Now, your root folder structure shall be something like:",[790,1255,1256,1261,1266,1271],{},[793,1257,1258],{},[840,1259,1260],{},"certificate",[793,1262,1263],{},[840,1264,1265],{},"iink",[793,1267,1268],{},[840,1269,1270],{},"recognition-assets",[793,1272,1273],{},[840,1274,1252],{},[699,1276,1277,1279,1280,1282],{},[989,1278,1136],{}," Open a command prompt and navigate to the ",[840,1281,1252],{}," folder.",[699,1284,1285,1287,1288,1290,1291,1294],{},[989,1286,1168],{}," Run ",[840,1289,834],{}," to generate the project files from the ",[840,1292,1293],{},"..\u002Fiink\u002Fexamples\u002Fqt"," source directory",[699,1296,1297,1300,1301,1303],{},[989,1298,1299],{},"Step 5:"," Open the solution or XCode project that was generated into the ",[840,1302,1252],{}," folder, compile it and launch it.",[784,1305,1306,1308,1313,1316,1322,1325,1331,1345,1350,1364,1372,1377],{"v-slot:csharp":756},[699,1307,1094],{},[699,1309,1310,1312],{},[989,1311,1099],{}," Clone the MyScript Git repository containing the examples for Windows and navigate to the root of the folder.",[699,1314,1315],{},"For the Universal Windows Platform (UWP), type:",[1102,1317,1320],{"className":1318,"code":1319,"language":1107},[1105],"git clone https:\u002F\u002Fgithub.com\u002FMyScript\u002Finteractive-ink-examples-uwp.git\ncd interactive-ink-examples-uwp\n",[840,1321,1319],{"__ignoreMap":756},[699,1323,1324],{},"For \"traditional\" Windows desktop .NET development using WPF, type:",[1102,1326,1329],{"className":1327,"code":1328,"language":1107},[1105],"git clone https:\u002F\u002Fgithub.com\u002FMyScript\u002Finteractive-ink-examples-wpf.git\ncd interactive-ink-examples-wpf\n",[840,1330,1328],{"__ignoreMap":756},[699,1332,1333,1335,1336,1339,1340,1342,1343,929],{},[989,1334,1114],{}," Replace ",[840,1337,1338],{},"MyCertificate.cs"," file in ",[840,1341,909],{}," directory with ",[796,1344,1131],{"href":1130},[699,1346,1347,1349],{},[989,1348,1136],{}," Open the appropriate solution file:",[790,1351,1352,1358],{},[793,1353,1354,1357],{},[840,1355,1356],{},"iink-examples.uwp.sln"," for UWP",[793,1359,1360,1363],{},[840,1361,1362],{},"iink-examples.wpf.sln"," for WPF",[699,1365,1366,1367,1227,1369,1371],{},"Set ",[840,1368,909],{},[840,1370,915],{}," project as your startup project by right-clicking the project in the solution browser and selecting \"Set as startup project\".",[699,1373,1374,1376],{},[989,1375,1168],{}," Build and run.",[699,1378,1379],{},"This will automatically fetch the latest iink SDK libraries, via the NuGet Package Manager.",[784,1381,1382,1384,1389,1395,1400,1410,1413,1419,1428,1440],{"v-slot:swift":756},[699,1383,1094],{},[699,1385,1386,1388],{},[989,1387,1099],{}," Clone the MyScript Git repository containing the examples for the iOS platform and navigate to the root of the folder containing the applications:",[1102,1390,1393],{"className":1391,"code":1392,"language":1107},[1105],"git clone https:\u002F\u002Fgithub.com\u002FMyScript\u002Finteractive-ink-examples-ios.git\ncd interactive-ink-examples-ios\n",[840,1394,1392],{"__ignoreMap":756},[699,1396,1397,1399],{},[989,1398,1114],{}," Navigate to the root folder of the example application you want to run:",[790,1401,1402],{},[793,1403,1404,1227,1407],{},[840,1405,1406],{},"cd Examples\u002FGetStarted",[840,1408,1409],{},"cd Examples\u002FDemo",[699,1411,1412],{},"Then run:",[1102,1414,1417],{"className":1415,"code":1416,"language":1107},[1105],"pod install\n",[840,1418,1416],{"__ignoreMap":756},[699,1420,1421,1422,1427],{},"This command will use ",[796,1423,1426],{"href":1424,"rel":1425},"https:\u002F\u002Fguides.cocoapods.org\u002Fusing\u002Fgetting-started.html",[800],"CocoaPods"," to fetch the iink SDK libraries.",[699,1429,1430,1335,1432,1119,1435,1342,1438,929],{},[989,1431,1136],{},[840,1433,1434],{},"MyCertificate.c",[840,1436,1437],{},"MyScriptCertificate",[796,1439,1131],{"href":1130},[699,1441,1442,1444,1445,1448],{},[989,1443,1168],{}," Open the Xcode ",[989,1446,1447],{},"workspace",", compile and run the default target.",[776,1450,1452],{"id":1451},"building-your-first-interactive-ink-application","Building your first interactive ink application",[699,1454,1455],{},"To guide you through the fundamentals of iink SDK, this documentation explains some key concepts and provides you with code portions that are relevant for a simple iink SDK integration.",[699,1457,1458],{},"The guide consists of the following steps:",[1460,1461,1462,1466,1470,1474,1478,1482,1487,1491,1495,1499,1503],"ol",{},[793,1463,1464],{},[796,1465,595],{"href":596},[793,1467,1468],{},[796,1469,407],{"href":599},[793,1471,1472],{},[796,1473,432],{"href":603},[793,1475,1476],{},[796,1477,440],{"href":607},[793,1479,1480],{},[796,1481,436],{"href":611},[793,1483,1484],{},[796,1485,1486],{"href":616},"Block and selection",[793,1488,1489],{},[796,1490,448],{"href":620},[793,1492,1493],{},[796,1494,575],{"href":624},[793,1496,1497],{},[796,1498,452],{"href":627},[793,1500,1501],{},[796,1502,456],{"href":631},[793,1504,1505],{},[796,1506,471],{"href":635},[955,1508,1509],{"color":957},[699,1510,1511],{},"While introducing the different concepts one-by-one in a logical manner, this guide is written in a way that allows you to refer to a particular\naspect at any time, even if you don't strictly follow the intended order.",[699,1513,1514,1515],{},"Ready? ",[796,1516,1517],{"href":596},"Let's start!",{"title":756,"searchDepth":757,"depth":757,"links":1519},[1520,1522,1523,1527,1528],{"id":778,"depth":1521,"text":779},2,{"id":897,"depth":1521,"text":898},{"id":983,"depth":1521,"text":984,"children":1524},[1525,1526],{"id":1008,"depth":757,"text":1009},{"id":1061,"depth":757,"text":1062},{"id":1086,"depth":1521,"text":1087},{"id":1451,"depth":1521,"text":1452},"\u002Fdocs\u002Fsdk\u002F4.4\u002Fgetting-started\u002Fsetup","Guide to discover iink SDK",{},"yx8zjy","2.3",{"title":386,"description":1530},"53bPuk9so6mPgBvbQFCCcYKYM-q69m6u0n3v_VeBR3A",1792566522317]