[{"data":1,"prerenderedAt":1815},["ShallowReactive",2],{"navigation":3,"nav-sdk32":498,"docs-sdk-3.2-editor-block-selection-management":691,"support-index":1746},[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.2",null,"\u002Fdocs\u002Fsdk\u002F3.2","docs\u002Fsdk\u002F3.2",[509,514,519,523,536,560,581,592,599,616,624,660,663,667,671,675],{"title":330,"path":510,"stem":511,"navTitle":512,"icon":513},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fabout","docs\u002Fsdk\u002F3.2\u002F01.about","About","i-tabler-info-circle",{"title":515,"path":516,"stem":517,"navTitle":33,"icon":518},"New in 3.2","\u002Fdocs\u002Fsdk\u002F3.2\u002Fchangelog","docs\u002Fsdk\u002F3.2\u002F02.changelog","i-tabler-bell-ringing",{"title":37,"path":520,"stem":521,"navTitle":37,"icon":522},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fmigration-guide","docs\u002Fsdk\u002F3.2\u002F03.migration-guide","i-tabler-gps",{"title":42,"navTitle":505,"icon":505,"path":524,"stem":525,"children":526,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fintegration","docs\u002Fsdk\u002F3.2\u002F04.integration",[527,532],{"title":47,"path":528,"stem":529,"navTitle":530,"icon":531},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fintegration\u002Fplatforms","docs\u002Fsdk\u002F3.2\u002F04.integration\u002F01.platforms","Platforms","i-tabler-device-laptop",{"title":51,"path":533,"stem":534,"navTitle":51,"icon":535},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fintegration\u002Fintegration-levels","docs\u002Fsdk\u002F3.2\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.2\u002Frecognition-capabilities","docs\u002Fsdk\u002F3.2\u002F05.recognition-capabilities",[540,544,548,552,556],{"title":60,"path":541,"stem":542,"navTitle":505,"icon":543},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognition-capabilities\u002Frecognizers","docs\u002Fsdk\u002F3.2\u002F05.recognition-capabilities\u002F01.recognizers","i-tabler-text-scan-2",{"title":64,"path":545,"stem":546,"navTitle":64,"icon":547},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognition-capabilities\u002Ftext-languages","docs\u002Fsdk\u002F3.2\u002F05.recognition-capabilities\u002F02.text-languages","i-tabler-language",{"title":68,"path":549,"stem":550,"navTitle":68,"icon":551},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognition-capabilities\u002Fmath-elements-and-rules","docs\u002Fsdk\u002F3.2\u002F05.recognition-capabilities\u002F03.math-elements-and-rules","i-tabler-math",{"title":72,"path":553,"stem":554,"navTitle":72,"icon":555},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognition-capabilities\u002Fdiagram-features","docs\u002Fsdk\u002F3.2\u002F05.recognition-capabilities\u002F04.diagram-features","i-tabler-circle-square",{"title":76,"path":557,"stem":558,"navTitle":505,"icon":559},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognition-capabilities\u002Fgestures","docs\u002Fsdk\u002F3.2\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.2\u002Finteractivity-integration","docs\u002Fsdk\u002F3.2\u002F06.interactivity-integration",[564,568,572,577],{"title":85,"path":565,"stem":566,"navTitle":85,"icon":567},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity-integration\u002Fcontent-types","docs\u002Fsdk\u002F3.2\u002F06.interactivity-integration\u002F01.content-types","i-tabler-eye",{"title":89,"path":569,"stem":570,"navTitle":89,"icon":571},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity-integration\u002Finteractive-features","docs\u002Fsdk\u002F3.2\u002F06.interactivity-integration\u002F02.interactive-features","i-tabler-bolt",{"title":93,"path":573,"stem":574,"navTitle":575,"icon":576},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity-integration\u002Fimport-and-export-formats","docs\u002Fsdk\u002F3.2\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.2\u002Finteractivity-integration\u002Fmath-features","docs\u002Fsdk\u002F3.2\u002F06.interactivity-integration\u002F04.math-features","i-tabler-calculator",{"title":106,"navTitle":505,"icon":505,"path":582,"stem":583,"children":584,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fgetting-started","docs\u002Fsdk\u002F3.2\u002F07.getting-started",[585,589],{"title":386,"path":586,"stem":587,"navTitle":505,"icon":588},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fgetting-started\u002Fsetup","docs\u002Fsdk\u002F3.2\u002F07.getting-started\u002F01.setup","i-tabler-direction-sign",{"title":390,"path":590,"stem":591,"navTitle":505,"icon":588},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fgetting-started\u002Finteractive-ink-runtime","docs\u002Fsdk\u002F3.2\u002F07.getting-started\u002F02.interactive-ink-runtime",{"title":394,"navTitle":505,"icon":505,"path":593,"stem":594,"children":595,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognizer","docs\u002Fsdk\u002F3.2\u002F08.recognizer",[596],{"title":60,"path":597,"stem":598,"navTitle":505,"icon":543},"\u002Fdocs\u002Fsdk\u002F3.2\u002Frecognizer\u002Frecognizers","docs\u002Fsdk\u002F3.2\u002F08.recognizer\u002F01.recognizers",{"title":402,"navTitle":505,"icon":505,"path":600,"stem":601,"children":602,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity","docs\u002Fsdk\u002F3.2\u002F09.interactivity",[603,607,611],{"title":604,"path":605,"stem":606,"navTitle":505,"icon":547},"Non-interactive languages","\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity\u002Fnon-interactive-languages","docs\u002Fsdk\u002F3.2\u002F09.interactivity\u002F01.non-interactive-languages",{"title":407,"path":608,"stem":609,"navTitle":505,"icon":610},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity\u002Fstorage","docs\u002Fsdk\u002F3.2\u002F09.interactivity\u002F02.storage","i-tabler-file-database",{"title":414,"path":612,"stem":613,"navTitle":614,"icon":615},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity\u002Fcombined-undo-redo-stacks","docs\u002Fsdk\u002F3.2\u002F09.interactivity\u002F03.combined-undo-redo-stacks","Combined undo\u002Fredo stacks","i-tabler-arrow-back-up",{"title":418,"navTitle":505,"icon":505,"path":617,"stem":618,"children":619,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Foffscreen-editor","docs\u002Fsdk\u002F3.2\u002F10.offscreen-editor",[620],{"title":423,"path":621,"stem":622,"navTitle":505,"icon":623},"\u002Fdocs\u002Fsdk\u002F3.2\u002Foffscreen-editor\u002Foff-screen-usage","docs\u002Fsdk\u002F3.2\u002F10.offscreen-editor\u002F01.off-screen-usage","i-tabler-stack-backward",{"title":427,"navTitle":505,"icon":505,"path":625,"stem":626,"children":627,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor","docs\u002Fsdk\u002F3.2\u002F11.editor",[628,632,636,640,644,648,652,656],{"title":432,"path":629,"stem":630,"navTitle":505,"icon":631},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Frendering","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F01.rendering","i-tabler-app-window",{"title":436,"path":633,"stem":634,"navTitle":505,"icon":635},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fediting","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F02.editing","i-tabler-edit",{"title":440,"path":637,"stem":638,"navTitle":505,"icon":639},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Ftool-controller","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F03.tool-controller","i-tabler-adjustments",{"title":444,"path":641,"stem":642,"navTitle":505,"icon":643},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fblock-selection-management","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F04.block-selection-management","i-tabler-pointer",{"title":448,"path":645,"stem":646,"navTitle":505,"icon":647},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fconversion","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F05.conversion","i-tabler-sparkles",{"title":452,"path":649,"stem":650,"navTitle":505,"icon":651},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fzooming-and-scrolling","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F06.zooming-and-scrolling","i-tabler-zoom-pan",{"title":456,"path":653,"stem":654,"navTitle":505,"icon":655},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fstyling","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F07.styling","i-tabler-palette",{"title":460,"path":657,"stem":658,"navTitle":505,"icon":659},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fcustom-inking","docs\u002Fsdk\u002F3.2\u002F11.editor\u002F08.custom-inking","i-tabler-brush",{"title":464,"path":661,"stem":662,"navTitle":505,"icon":576},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fimport-and-export","docs\u002Fsdk\u002F3.2\u002F12.import-and-export",{"title":202,"path":664,"stem":665,"navTitle":505,"icon":666},"\u002Fdocs\u002Fsdk\u002F3.2\u002Ftext-recognition-candidates","docs\u002Fsdk\u002F3.2\u002F13.text-recognition-candidates","i-tabler-tags",{"title":471,"path":668,"stem":669,"navTitle":505,"icon":670},"\u002Fdocs\u002Fsdk\u002F3.2\u002Ferror-management","docs\u002Fsdk\u002F3.2\u002F14.error-management","i-tabler-bug",{"title":206,"path":672,"stem":673,"navTitle":505,"icon":674},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fcustom-recognition","docs\u002Fsdk\u002F3.2\u002F15.custom-recognition","i-tabler-file-code",{"title":139,"navTitle":505,"icon":505,"path":676,"stem":677,"children":678,"page":40},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference","docs\u002Fsdk\u002F3.2\u002F16.reference",[679,683,688],{"title":144,"path":680,"stem":681,"navTitle":505,"icon":682},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference\u002Fconfiguration","docs\u002Fsdk\u002F3.2\u002F16.reference\u002F01.configuration","i-tabler-settings",{"title":239,"path":684,"stem":685,"navTitle":686,"icon":687},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference\u002Fjiix","docs\u002Fsdk\u002F3.2\u002F16.reference\u002F02.jiix","JIIX","i-tabler-braces",{"title":495,"path":689,"stem":690,"navTitle":456,"icon":655},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference\u002Fstyling","docs\u002Fsdk\u002F3.2\u002F16.reference\u002F03.styling",{"path":641,"page":692},{"id":693,"title":444,"body":694,"canonicalPath":1738,"description":1739,"extension":1740,"icon":643,"meta":1741,"navTitle":505,"navigation":1742,"path":641,"resolveKey":1743,"resolveVersion":505,"seo":1744,"stem":642,"__hash__":1745},"sdk32\u002Fdocs\u002Fsdk\u002F3.2\u002F11.editor\u002F04.block-selection-management.md",{"type":695,"value":696,"toc":1721},"minimark",[697,718,723,726,744,751,805,883,922,966,1012,1016,1019,1024,1086,1099,1103,1207,1211,1242,1246,1473,1477,1481,1538,1542,1638,1642,1645,1650,1679,1683],[698,699,700,713],"partial",{},[701,702,704],"template",{"v-slot:swift":703},"",[705,706,707,708,712],"p",{},"This page depicts how selections and blocks are managed by the ",[709,710,711],"code",{},"IINKEditor"," object within iink SDK.",[705,714,707,715,712],{},[709,716,717],{},"Editor",[719,720,722],"h2",{"id":721},"selection-and-block-objects","Selection and block objects",[705,724,725],{},"Selection and block contents are both subdivisions of the content part:",[727,728,729],"ul",{},[730,731,732,733,737,738,743],"li",{},"A ",[734,735,736],"strong",{},"content selection"," is a subset of the content part that can be obtained by selecting a geometrical area within a content part thanks to ",[739,740,742],"a",{"href":741},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Ftool-controller#pointer-tool","the lasso selector tool",".",[745,746,748],"callout",{"color":747},"secondary",[705,749,750],{},"For the moment, the lasso selection is limited to \"Diagram\", \"Raw Content\" and \"Text Document\" parts",[698,752,753,777,793],{},[701,754,755],{"v-slot:swift":703},[705,756,757,758,762,763,766,767,772,773,776],{},"When the captured strokes representing the lasso ",[739,759,761],{"href":760},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fediting#incremental-input","are sent to the editor",", iink SDK analyzes what they surround to determine a selection.\nThis selection is represented by a ",[709,764,765],{},"IINKContentSelection"," object.\nIf you implement the ",[739,768,770],{"href":769},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Frendering#canvas",[709,771,110],{}," ",[709,774,775],{},"setDropShadow"," method, your end-users will get an immediate visual feedback on the selection with a dropshadow added on the selected items.",[701,778,779],{"v-slot:csharp":703},[705,780,757,781,762,783,766,786,772,790,776],{},[739,782,761],{"href":760},[709,784,785],{},"ContentSelection",[739,787,788],{"href":769},[709,789,110],{},[709,791,792],{},"SetDropShadow",[705,794,757,795,762,797,766,799,772,803,776],{},[739,796,761],{"href":760},[709,798,785],{},[739,800,801],{"href":769},[709,802,110],{},[709,804,775],{},[698,806,807,829,846,866],{},[701,808,809,824],{"v-slot:swift":703},[705,810,811,812,772,815,819,820,823],{},"Listening to the ",[709,813,814],{},"selectionChanged()",[739,816,818],{"href":817},"\u002Fdocs\u002Fsdk\u002F3.2\u002Feditor\u002Fediting#monitoring-changes-in-the-model","event"," lets also you know that some selection changes have occurred and that\nyou can retrieve the corresponding selection by calling ",[709,821,822],{},"getSelection"," on the editor.\nThe editor has a set of utility methods to then retrieve information about the current selection, like the blocks included in it or intersecting with it, or the list of possible actions on it. In addition, the API lets you programmatically set a selection.",[745,825,826],{"color":747},[705,827,828],{},"For the full list of methods and how to use them, please browse the documentation from Xcode.",[701,830,831,841],{"v-slot:csharp":703},[705,832,811,833,772,836,819,838,823],{},[709,834,835],{},"SelectionChanged()",[739,837,818],{"href":817},[709,839,840],{},"GetSelection",[745,842,843],{"color":747},[705,844,845],{},"For the full list of methods and how to use them, please browse the documentation from Visual Studio.",[701,847,848,856],{"v-slot:java":703},[705,849,811,850,772,852,819,854,823],{},[709,851,814],{},[739,853,818],{"href":817},[709,855,822],{},[745,857,858],{"color":747},[705,859,860,861,865],{},"For the full list of methods and how to use them, please refer to the ",[739,862,864],{"href":863},"\u002Fdocs\u002Freference\u002Fsdk\u002F3.2\u002Fjava\u002Fcom\u002Fmyscript\u002Fiink\u002FEditor.html","API"," documentation.",[701,867,868,876],{"v-slot:cpp":703},[705,869,811,870,772,872,819,874,823],{},[709,871,814],{},[739,873,818],{"href":817},[709,875,822],{},[745,877,878],{"color":747},[705,879,860,880,865],{},[739,881,864],{"href":882},"(\u002Fdocs\u002Freference\u002Fsdk\u002F3.2\u002Fcpp\u002Fcom\u002Fmyscript\u002Fiink\u002FEditor.html)",[727,884,885],{},[730,886,732,887,890,891,899,902,903,905,911,913,914,917,918,921],{},[734,888,889],{},"content block"," is a semantic subdivision of the content part, and may contain data and\u002For other blocks.\nIt has a unique id and a defined type (\"Text\", \"Math\", \"Diagram\", \"Raw Content\", \"Container\"...). For example:",[727,892,893,896],{},[730,894,895],{},"A \"Math\" part will only contain a single block, hosting the math content itself.",[730,897,898],{},"A \"Text Document\" part will be more complex, as it can host text paragraphs, math equations, diagrams and drawings, arranged in a complex layout, sometimes\none after the other, sometimes alongside one another. This is where \"Container\" blocks can be used to semantically group sub-blocks together.",[900,901],"br",{},"The following illustration shows how these different blocks relate together inside their parent parts:",[900,904],{},[906,907],"img",{"alt":703,"height":908,"src":909,"width":910},403.82154330708664,"\u002Fdocs\u002Fimages\u002Fparts-vs-blocks.svg",797.5870488188978,[900,912],{},"When ",[709,915,916],{},"diagram.enable-sub-blocks"," is set to ",[709,919,920],{},"true"," in the configuration, \"Diagram\" blocks contain sub blocks of type \"Text\", \"Node\", \"Edge\" or \"Polyedge\"\ndescribing the content of the diagram.",[698,923,924,936,960],{},[701,925,926],{"v-slot:swift":703},[705,927,928,929,932,933,935],{},"In iink SDK, a content block is represented by a ",[709,930,931],{},"IINKContentBlock"," object that inherits from the ",[709,934,765],{}," object.",[701,937,938,945],{"v-slot:java":703},[705,939,928,940,932,943,935],{},[709,941,942],{},"ContentBlock",[709,944,785],{},[745,946,947],{"color":747},[705,948,949,950,952,953,772,956],{},"To reduce the need for use\u002Ftry-with-resources\u002Fclose calls on your blocks, you can handle block IDs rather than ",[709,951,942],{}," objects to simplify your ",[709,954,955],{},"AutoCloseable",[739,957,959],{"href":958},"\u002Fdocs\u002Fsdk\u002F3.2\u002Finteractivity\u002Fstorage#objects-lifecycle","object lifecycle",[705,961,928,962,932,964,935],{},[709,963,942],{},[709,965,785],{},[698,967,968,987,1001],{},[701,969,970],{"v-slot:csharp":703},[727,971,972],{},[730,973,974,975,978,979,982,983,986],{},"Both ",[734,976,977],{},"content block and selection objects"," have a bounding box that can be retrieved with the editor ",[709,980,981],{},"GetBox"," method.\nThe part they belong to is accessible with the ",[709,984,985],{},"GetPart"," method.",[701,988,989],{"v-slot:swift":703},[727,990,991],{},[730,992,974,993,978,995,982,998,986],{},[734,994,977],{},[709,996,997],{},"getBox",[709,999,1000],{},"part",[727,1002,1003],{},[730,1004,974,1005,978,1007,982,1009,986],{},[734,1006,977],{},[709,1008,997],{},[709,1010,1011],{},"getPart",[719,1013,1015],{"id":1014},"operations-common-to-blocks-and-selections","Operations common to blocks and selections",[705,1017,1018],{},"Some operations are possible at a finer granularity than the part, with either blocks or selections.\nThe following sections list those main operations:",[1020,1021,1023],"h3",{"id":1022},"retrieving-possible-actions","Retrieving possible actions",[698,1025,1026,1050,1070,1072],{},[701,1027,1028,1031],{"v-slot:csharp":703},[705,1029,1030],{},"For an ease of integration, you can interrogate the editor to get the supported format\u002Ftype\u002Fstate related to the actions you intend to apply on the selection\u002Fblock.",[727,1032,1033,1039],{},[730,1034,1035,1036,743],{},"For instance, to determine whether an export action is possible, you can use the ",[709,1037,1038],{},"GetSupportedExportMimeTypes()",[730,1040,1041,1042,1045,1046,1049],{},"When dealing with a lasso selection, the ",[709,1043,1044],{},"GetAvailableSelectionModes()"," method lets you retrieve the selection modes of the active selection associated with the editor.\nYou can then choose which selection mode to apply on it with the ",[709,1047,1048],{},"SetSelectionMode()",". This can be useful, for instance, in the case of a lasso selection to choose between a lasso outline, item handles (in case the selection is made of a single item), or resize handles.",[701,1051,1052,1054],{"v-slot:swift":703},[705,1053,1030],{},[727,1055,1056,1061],{},[730,1057,1035,1058,743],{},[709,1059,1060],{},"supportedExportMimeTypes",[730,1062,1041,1063,1066,1067,1049],{},[709,1064,1065],{},"getAvailableSelectionModes()"," method lets you retrieve the selection modes of the active selection associated with the editor.\nYou can then choose which selection mode to apply on it with by setting the ",[709,1068,1069],{},"mode",[705,1071,1030],{},[727,1073,1074,1079],{},[730,1075,1035,1076,743],{},[709,1077,1078],{},"getSupportedExportMimeTypes()",[730,1080,1041,1081,1045,1083,1049],{},[709,1082,1065],{},[709,1084,1085],{},"setSelectionMode()",[745,1087,1088],{"color":747},[705,1089,1090,1091,1098],{},"For further details, you can refer to the ",[739,1092,1094,1097],{"href":1093},"\u002Fdocs\u002Fsdk\u002F3.2\u002Fgetting-started\u002Fsetup#example-applications",[709,1095,1096],{},"Demo"," example"," implementation of selection and block context menus.",[1020,1100,1102],{"id":1101},"checking-a-block-hierarchy-or-a-selection-validity","Checking a block hierarchy or a selection validity",[698,1104,1105,1141,1165,1187],{},[701,1106,1107],{"v-slot:swift":703},[705,1108,1109,1110,1114,1115,1118,1119,1122,1123,1126,1127,772,1130,1133,1134,1137,1138,1140],{},"It is important to note that ",[739,1111,1113],{"href":1112},"#navigating-the-block-hierarchy","a block hierarchy"," or a content selection ",[734,1116,1117],{},"is only valid at a given point in time",".\nFor instance, in the case of a Text Document, inserting new blocks, removing some text using a gesture, are some examples of events\nthat may invalidate the block hierarchy or the content selection you previously retrieved.\nSo, to check an object validity, call its ",[709,1120,1121],{},"valid"," property. Alternatively, listening to ",[709,1124,1125],{},"contentChanged:blockIds:"," and ",[709,1128,1129],{},"selectionChanged",[739,1131,1132],{"href":817},"events","\nusing an ",[709,1135,1136],{},"IINKEditorDelegate"," on your ",[709,1139,711],{}," object will provide hints that your blocks\u002Fselection may have become invalid.",[701,1142,1143],{"v-slot:csharp":703},[705,1144,1109,1145,1114,1147,1118,1149,1152,1153,1126,1156,772,1158,1133,1160,1137,1163,1140],{},[739,1146,1113],{"href":1112},[734,1148,1117],{},[709,1150,1151],{},"IsValid()"," method. Alternatively, listening to ",[709,1154,1155],{},"ContentChanged()",[709,1157,835],{},[739,1159,1132],{"href":817},[709,1161,1162],{},"IEditorListener",[709,1164,717],{},[701,1166,1167],{"v-slot:java":703},[705,1168,1109,1169,1114,1171,1118,1173,1152,1176,1126,1179,772,1181,1133,1183,1137,1185,1140],{},[739,1170,1113],{"href":1112},[734,1172,1117],{},[709,1174,1175],{},"isValid()",[709,1177,1178],{},"contentChanged()",[709,1180,814],{},[739,1182,1132],{"href":817},[709,1184,1162],{},[709,1186,717],{},[701,1188,1189],{"v-slot:cpp":703},[705,1190,1109,1191,1114,1193,1118,1195,1152,1197,1126,1199,772,1201,1133,1203,1137,1205,1140],{},[739,1192,1113],{"href":1112},[734,1194,1117],{},[709,1196,1175],{},[709,1198,1178],{},[709,1200,814],{},[739,1202,1132],{"href":817},[709,1204,1162],{},[709,1206,717],{},[1020,1208,1210],{"id":1209},"transformation-operations","Transformation operations",[698,1212,1213,1225,1235],{},[701,1214,1215],{"v-slot:swift":703},[705,1216,1217,1218,1221,1222,986],{},"The editor lets you apply geometrical transformations like scaling or translation on selected content. Not all transformations are permitted on any block or selection.\nSo, you can check whether a transformation is allowed with ",[709,1219,1220],{},"transformStatus(forTransform:selection:)"," before actually applying it with the ",[709,1223,1224],{},"transform()",[701,1226,1227],{"v-slot:csharp":703},[705,1228,1217,1229,1221,1232,986],{},[709,1230,1231],{},"GetTransformStatus()",[709,1233,1234],{},"Transform()",[705,1236,1217,1237,1221,1240,986],{},[709,1238,1239],{},"getTransformStatus()",[709,1241,1224],{},[1020,1243,1245],{"id":1244},"other-operations","Other operations",[698,1247,1248,1321,1376,1429],{},[701,1249,1250],{"v-slot:swift":703},[727,1251,1252,1262,1271,1286,1292,1301],{},[730,1253,1254,1257,1258,1261],{},[709,1255,1256],{},"convert(selection:targetState:)"," lets you ",[739,1259,1260],{"href":645},"convert"," the ink inside a given block or selection.",[730,1263,1264,1257,1267,1270],{},[709,1265,1266],{},"export(selection:mimeType:)",[739,1268,1269],{"href":661},"export"," the content of a selection or of a specific block, including its children",[730,1272,1273,1276,1277,1280,1281,1285],{},[709,1274,1275],{},"copy:error:"," lets you copy a block\u002Fselection into the internal clipboard. You can then paste it at a given location using ",[709,1278,1279],{},"paste(:at)",",\nmuch like you would ",[739,1282,1284],{"href":1283},"#block-addition-and-removal","add a new block",".\nText copy and paste works from various text block sources (\"Text\", \"Diagram\" or \"Raw Content\") to either a \"Text Document\" or a \"Text\" part.\nIn the latter case, the part must be empty before performing the paste.",[730,1287,1288,1291],{},[709,1289,1290],{},"erase:error:"," lets you remove the content selection or non-root block from the editor part.",[730,1293,1294,1297,1298,1300],{},[709,1295,1296],{},"isempty:error:"," lets you check whether this selection\u002Fblock is empty or invalid. It also returns ",[709,1299,920],{}," when the editor is not associated with a part.",[730,1302,1303,1306,1307,1311,1312,1316,1317,1320],{},[709,1304,1305],{},"set(:textFormat:selection)"," lets you programmatically format the text blocks that are contained in the selection, to paragraph (P), headings of level 1 (H1) or level 2 (H2),\nlike you would do with an ",[739,1308,1310],{"href":1309},"\u002Fdocs\u002Fconcepts\u002Ffundamentals\u002Frendering-driven-interactivity\u002Fediting-gestures#decoration-gestures","underline decoration gestures",".\nThe corresponding ",[739,1313,1315],{"href":1314},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference\u002Fstyling#text-block","CSS styling class"," is applied.\nThe ",[709,1318,1319],{},"supportedTextFormats(forSelection:)"," method allows you to retrieve the available formats.",[701,1322,1323],{"v-slot:csharp":703},[727,1324,1325,1332,1340,1352,1357,1364],{},[730,1326,1327,1257,1330,1261],{},[709,1328,1329],{},"Convert()",[739,1331,1260],{"href":645},[730,1333,1334,1257,1337,1339],{},[709,1335,1336],{},"Export_()",[739,1338,1269],{"href":661}," the content of a selection or of a specific block, including its children.",[730,1341,1342,1345,1346,1349,1350,1285],{},[709,1343,1344],{},"Copy()"," lets you copy a block or selection content into the internal clipboard. You can then paste it at a given location using ",[709,1347,1348],{},"Paste()",", much like you would ",[739,1351,1284],{"href":1283},[730,1353,1354,1291],{},[709,1355,1356],{},"Erase()",[730,1358,1359,1297,1362,1300],{},[709,1360,1361],{},"IsEmpty()",[709,1363,920],{},[730,1365,1366,1306,1369,1311,1371,1316,1373,1320],{},[709,1367,1368],{},"SetTextFormat()",[739,1370,1310],{"href":1309},[739,1372,1315],{"href":1314},[709,1374,1375],{},"GetSupportedTextFormats",[701,1377,1378],{"v-slot:java":703},[727,1379,1380,1387,1394,1404,1409,1416],{},[730,1381,1382,1257,1385,1261],{},[709,1383,1384],{},"convert()",[739,1386,1260],{"href":645},[730,1388,1389,1257,1392,1339],{},[709,1390,1391],{},"export_()",[739,1393,1269],{"href":661},[730,1395,1396,1345,1399,1280,1402,1285],{},[709,1397,1398],{},"copy()",[709,1400,1401],{},"paste()",[739,1403,1284],{"href":1283},[730,1405,1406,1291],{},[709,1407,1408],{},"erase()",[730,1410,1411,1297,1414,1300],{},[709,1412,1413],{},"isEmpty()",[709,1415,920],{},[730,1417,1418,1306,1421,1423,1424,1316,1426,1320],{},[709,1419,1420],{},"setTextFormat()",[739,1422,1310],{"href":1309},". The corresponding ",[739,1425,1315],{"href":1314},[709,1427,1428],{},"getSupportedTextFormats",[701,1430,1431],{"v-slot:cpp":703},[727,1432,1433,1439,1445,1453,1457,1463],{},[730,1434,1435,1257,1437,1261],{},[709,1436,1384],{},[739,1438,1260],{"href":645},[730,1440,1441,1257,1443,1339],{},[709,1442,1391],{},[739,1444,1269],{"href":661},[730,1446,1447,1345,1449,1280,1451,1285],{},[709,1448,1398],{},[709,1450,1401],{},[739,1452,1284],{"href":1283},[730,1454,1455,1291],{},[709,1456,1408],{},[730,1458,1459,1297,1461,1300],{},[709,1460,1413],{},[709,1462,920],{},[730,1464,1465,1306,1467,1423,1469,1316,1471,1320],{},[709,1466,1420],{},[739,1468,1310],{"href":1309},[739,1470,1315],{"href":1314},[709,1472,1428],{},[719,1474,1476],{"id":1475},"block-specific-operations","Block specific operations",[1020,1478,1480],{"id":1479},"navigating-the-block-hierarchy","Navigating the block hierarchy",[698,1482,1483,1500,1514,1528],{},[701,1484,1485],{"v-slot:swift":703},[705,1486,1487,1488,1491,1492,1495,1496,1499],{},"Any part you create contains a root block.\nThe different blocks form a hierarchy, which root can be obtained by calling the ",[709,1489,1490],{},"rootBlock"," property on the parent part.\nEach block, in turn, has a ",[709,1493,1494],{},"children"," property that will return its own children, if any, and a ",[709,1497,1498],{},"parent"," one that will return its parent.",[701,1501,1502],{"v-slot:csharp":703},[705,1503,1487,1504,1507,1508,1495,1511,1499],{},[709,1505,1506],{},"GetRootBlock()"," method on the parent part.\nEach block, in turn, has a ",[709,1509,1510],{},"Children",[709,1512,1513],{},"Parent",[701,1515,1516],{"v-slot:java":703},[705,1517,1487,1518,1507,1521,1524,1525,1499],{},[709,1519,1520],{},"getRootBlock()",[709,1522,1523],{},"getChildren()"," method that will return its own children, if any, and a ",[709,1526,1527],{},"getParent()",[701,1529,1530],{"v-slot:cpp":703},[705,1531,1487,1532,1507,1534,1524,1536,1499],{},[709,1533,1520],{},[709,1535,1523],{},[709,1537,1527],{},[1020,1539,1541],{"id":1540},"block-addition","Block addition",[698,1543,1544,1574,1600,1620],{},[701,1545,1546,1549],{"v-slot:swift":703},[705,1547,1548],{},"The editor offers methods for adding blocks.",[727,1550,1551,1562],{},[730,1552,1553,1554,1557,1558,1561],{},"The ",[709,1555,1556],{},"addBlock(at:type:)"," method adds a new block at a given location in compatible parts,\nas a way to ",[739,1559,1560],{"href":661},"import"," content (only \"Text Document\" parts support this feature as of now).",[730,1563,1564,1565,1568,1569,1573],{},"A dedicated ",[709,1566,1567],{},"addImage(position:file:mimeType:)"," method allows you to insert an image as a \"Drawing\" block inside a \"Text Document\" part or as an \"Image\" block inside a \"RawContent\" part. It is possible to activate rotation of images in Raw Content parts with the ",[739,1570,1572],{"href":1571},"\u002Fdocs\u002Fsdk\u002F3.2\u002Freference\u002Fconfiguration#raw-content","“raw-content.rotation”"," property.",[701,1575,1576,1578],{"v-slot:csharp":703},[705,1577,1548],{},[727,1579,1580,1587,1593],{},[730,1581,1553,1582,1557,1585,1561],{},[709,1583,1584],{},"AddBlock()",[739,1586,1560],{"href":661},[730,1588,1553,1589,1592],{},[709,1590,1591],{},"RemoveBlock()"," method lets you remove a non-root block.",[730,1594,1564,1595,1568,1598,1573],{},[709,1596,1597],{},"AddImage()",[739,1599,1572],{"href":1571},[701,1601,1602,1604],{"v-slot:java":703},[705,1603,1548],{},[727,1605,1606,1613],{},[730,1607,1553,1608,1557,1611,1561],{},[709,1609,1610],{},"addBlock()",[739,1612,1560],{"href":661},[730,1614,1564,1615,1568,1618,1573],{},[709,1616,1617],{},"addImage()",[739,1619,1572],{"href":1571},[701,1621,1622,1624],{"v-slot:cpp":703},[705,1623,1548],{},[727,1625,1626,1632],{},[730,1627,1553,1628,1557,1630,1561],{},[709,1629,1610],{},[739,1631,1560],{"href":661},[730,1633,1564,1634,1568,1636,1573],{},[709,1635,1617],{},[739,1637,1572],{"href":1571},[1020,1639,1641],{"id":1640},"placeholder-block","Placeholder block",[705,1643,1644],{},"A placeholder block is designed to provide integrators with a method to utilize the UI features of the iink SDK inside a \"RawContent\" part to manage content that is not inherently recognized by iink.\nIt is essentially an image that can be accurately positioned and linked with specific metadata.\nSo, this block is defined by its exact position, image, interactivity options, and custom metadata, allowing you to store relevant information within your document.",[745,1646,1647],{"color":747},[705,1648,1649],{},"You should avoid mixing keyboard input with placeholders and converted text, as both will be edited differently",[698,1651,1652,1668],{},[701,1653,1654],{"v-slot:swift":703},[705,1655,1656,1657,1660,1661,1663,1664,1667],{},"You can use the ",[709,1658,1659],{},"IINKPlaceholderController"," object associated to the ",[709,1662,711],{}," to add and manipulate placeholders within a \"RawContent\" part.\nThe ",[709,1665,1666],{},"IINKPlaceholderInteractivityOptions"," object specifies the capabilities for interacting with the placeholder.",[705,1669,1656,1670,1660,1673,1675,1676,1667],{},[709,1671,1672],{},"PlaceholderController",[709,1674,717],{}," to add and manipulate placeholders within a \"Raw Content\" part.\nThe ",[709,1677,1678],{},"PlaceholderInteractivityOptions",[1020,1680,1682],{"id":1681},"other-block-operation","Other block operation",[698,1684,1685,1695,1704,1713],{},[701,1686,1687],{"v-slot:swift":703},[727,1688,1689],{},[730,1690,1691,1694],{},[709,1692,1693],{},"hitBlock:"," lets you know the top-most block at a given location, if there is any.\nIt makes it possible for example to know which block is tapped or pressed by a user.",[701,1696,1697],{"v-slot:csharp":703},[727,1698,1699],{},[730,1700,1701,1694],{},[709,1702,1703],{},"HitBlock()",[701,1705,1706],{"v-slot:java":703},[727,1707,1708],{},[730,1709,1710,1694],{},[709,1711,1712],{},"hitBlock()",[701,1714,1715],{"v-slot:cpp":703},[727,1716,1717],{},[730,1718,1719,1694],{},[709,1720,1712],{},{"title":703,"searchDepth":1722,"depth":1722,"links":1723},3,[1724,1726,1732],{"id":721,"depth":1725,"text":722},2,{"id":1014,"depth":1725,"text":1015,"children":1727},[1728,1729,1730,1731],{"id":1022,"depth":1722,"text":1023},{"id":1101,"depth":1722,"text":1102},{"id":1209,"depth":1722,"text":1210},{"id":1244,"depth":1722,"text":1245},{"id":1475,"depth":1725,"text":1476,"children":1733},[1734,1735,1736,1737],{"id":1479,"depth":1722,"text":1480},{"id":1540,"depth":1722,"text":1541},{"id":1640,"depth":1722,"text":1641},{"id":1681,"depth":1722,"text":1682},"\u002Fdocs\u002Fsdk\u002F4.4\u002Feditor\u002Fblock-selection-management","Guide to discover iink SDK","md",{},true,"llajnd",{"title":444,"description":1739},"HgcX364THoh9XnCbJ6LcpN-26oMfB4uWVeYevh0RL_g",{"id":1747,"title":1748,"body":1749,"canonicalPath":505,"description":1809,"extension":1740,"icon":522,"meta":1810,"navTitle":20,"navigation":1742,"path":1811,"resolveKey":505,"resolveVersion":505,"seo":1812,"stem":1813,"__hash__":1814},"support\u002Fsupport\u002F01.index.md","Support",{"type":695,"value":1750,"toc":1807},[1751,1754],[705,1752,1753],{},"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.",[1755,1756,1757,1766,1774,1782,1790,1799],"card-group",{},[1758,1759,1763],"card",{"icon":1760,"title":1761,"to":1762},"i-tabler-package","Recognition assets","\u002Fsupport\u002Frecognition-assets\u002F",[705,1764,1765],{},"Download base assets and build custom resources to fine-tune the recognition.",[1758,1767,1771],{"icon":1768,"title":1769,"to":1770},"i-tabler-key","On-device license management","\u002Fsupport\u002Fon-device\u002Fon-device-license-management\u002F",[705,1772,1773],{},"Manage licenses for applications embedding the on-device iink SDK.",[1758,1775,1779],{"icon":1776,"title":1777,"to":1778},"i-tabler-user-circle","Registering with MyScript Cloud","\u002Fsupport\u002Fcloud\u002Fregistering-myscript-cloud\u002F",[705,1780,1781],{},"Create a Cloud account and obtain the keys to call our recognition APIs.",[1758,1783,1787],{"icon":1784,"title":1785,"to":1786},"i-tabler-rocket","Being production ready","\u002Fsupport\u002Fcloud\u002Fbeing-production-ready\u002F",[705,1788,1789],{},"Best practices and quotas to ship your iink Cloud integration to production.",[1758,1791,1796],{"icon":1792,"title":1793,"to":1794,"target":1795},"i-tabler-message-circle","Forums","https:\u002F\u002Fdeveloper-support.myscript.com\u002Fsupport\u002Flogin","_blank",[705,1797,1798],{},"Ask questions and get answers from the MyScript developer community.",[1758,1800,1804],{"icon":1801,"title":1802,"to":1803,"target":1795},"i-tabler-mail","Contact us","https:\u002F\u002Fwww.myscript.com\u002Fcontact\u002F",[705,1805,1806],{},"Can't find what you're looking for? Reach out to our team.",{"title":703,"searchDepth":1722,"depth":1722,"links":1808},[],"MyScript Developer Support hub",{},"\u002Fsupport",{"title":1748,"description":1809},"support\u002F01.index","jENFmcn55y_8r3_6pH5xxlH1dZJBwoAuq9F7gXQtow8",1792566552926]