Požadavky editoru IME (Custom Input Method Editor)

Tyto pokyny a požadavky vám můžou pomoct s vývojem vlastního editoru IME (Input Method Editor), který uživatelům pomůže zadat text v jazyce, který se nedá snadno reprezentovat na standardní klávesnici QWERTY.

Přehled imEs najdete v tématu Editor IME (Input Method Editor).

Výchozí IME

Uživatel může vybrat některý z aktivních editorů IME (Nastavení –> Čas a jazyk –> Jazyk –> Upřednostňované jazyky –> Jazyková sada – Možnosti) jako výchozí IME pro svůj upřednostňovaný jazyk.

Upřednostňované nastavení jazyka

Na obrazovce Nastavení jazyka vyberte výchozí klávesnici pro upřednostňovaný jazyk.

Upřednostňovaná jazyková klávesnice

Důležité

Nedoporučujeme zapisovat přímo do registru, abyste nastavili výchozí klávesnici pro váš vlastní přizpůsobený IME.

Požadavky na kompatibilitu

Níže jsou uvedené základní požadavky na kompatibilitu vlastního editoru IME.

Editor IME musí být kompatibilní s aplikacemi pro Windows.

K implementaci imEs použijte rozhraní TSF (Text Services Framework ). Dříve jste měli možnost použít Správce vstupních metod (IMM32) pro vstupní služby. Systém teď blokuje imEs implementované pomocí Správce vstupních metod (IMM32).

Při spuštění aplikace TSF načte knihovnu DLL IME pro ten, který je aktuálně vybraný uživatelem. Když se načte IME, podléhá stejným omezením aplikačního kontejneru jako samotná aplikace. Například IME nemůže přistupovat k internetu, pokud aplikace v manifestu nepožádala o přístup k internetu. Toto chování zajišťuje, že IME nemohou porušit bezpečnostní smlouvy.

TSF je zprostředkovatelem mezi aplikací a vaším IME (Input Method Editor). TSF komunikuje se vstupními událostmi do editoru IME a přijímá vstupní znaky zpět z editoru IME poté, co uživatel vybral znak.

Toto chování je stejné jako u předchozích verzí Windows, ale načtení do aplikace Windows ovlivňuje potenciální schopnosti IME.

Pokud váš editor IME potřebuje poskytovat různé funkce nebo uživatelské rozhraní mezi aplikacemi pro Windows a desktopovými aplikacemi, ujistěte se, že knihovna DLL načtená nástrojem TSF kontroluje, do jakého typu aplikace se načítá. Zavolejte metodu ITfThreadMgrEx::GetActiveFlags v editoru IME a zkontrolujte příznak TF_TMF_IMMERSIVEMODE, takže váš IME aktivuje jinou logiku aplikace v závislosti na výsledku.

Aplikace pro Windows nepodporují zasílání rychlých zpráv služby Table Text Service (TTS).

Poznámka:

Některé nástroje pro generování TTS IME vytvářejí IME, které jsou Windows označeny jako malware.

Editor IME musí být kompatibilní se systémovou lištou.

Pro hostování ikon editoru IME neexistuje žádný panel jazyků. Místo toho se vstupní indikátor zobrazí na hlavním panelu systému, který označuje aktuální vstupní možnost. Indikátor vstupu zobrazuje jenom ikonu brandingu editoru IME, která označuje aktuálně spuštěný editor IME. Existuje také jedna ikona režimu editoru IME, která se zobrazuje na levé straně ikony brandingu editoru IME pro uživatele, aby mohli provádět nejčastěji používaný přepínač režimu editoru IME, jako je zapnutí nebo vypnutí editoru IME.

Indikátor vstupu zobrazuje ikonu značky IME a ikonu režimu pouze pro kompatibilní IMEs. ImEs, které nejsou kompatibilní, nemají ikonu brandingu a ikonu režimu zobrazenou na hlavním panelu systému. Místo ikony brandingu editoru IME zobrazuje indikátor vstupu zkratku jazyka.

Místo samostatného souboru .ico uložte ikony editoru IME do souboru DLL nebo EXE. Návrh ikon editoru IME musí dodržovat pokyny popsané v následující části pokynů pro návrh uživatelského rozhraní.

Ikona brandingu IME

Vstupní indikátor získá ikonu značky IME z IME DLL pomocí ID prostředku definovaného IME při jeho registraci v systému.

Ikona režimu editoru IME

Některé IME se mohou spoléhat na indikátor vstupu, který se zobrazuje v systémové traye, aby zobrazily ikonu režimu IME. V tomto případě editor IME předá ikonu režimu editoru IME vstupnímu indikátoru pomocí GUID_LBI_INPUTMODE.

Při předávání ikon režimu editoru IME na vstupní indikátor na hlavním panelu systému je výchozí velikost ikony režimu editoru IME 16 × 16 pixelů. Škálování uživatelského rozhraní se řídí DPI.

Při předávání ikony režimu editoru IME do indikátoru vstupu v nástroji Řízení uživatelských účtů v Zabezpečené ploše je výchozí velikost ikony režimu editoru IME 20 × 20 pixelů. Ikona režimu IME na UAC se škáluje podle PPI.

Editor IME musí fungovat v kontejneru aplikací.

Některé funkce editoru IME jsou ovlivněné v kontejneru aplikace.

  • Soubory slovníku – IME často obsahují soubory slovníku ve formátu jen pro čtení, které slouží k mapování uživatelského vstupu na konkrétní znaky. Pokud chcete získat přístup k těmto souborům z kontejneru aplikace, musí je váš editor IME umístit do adresářů Program Files nebo Windows. Ve výchozím nastavení se tyto adresáře dají číst z kontejneru aplikace, takže imEs mají přístup k souborům slovníku uloženým v těchto umístěních. Pokud váš editor IME musí soubor slovníku uložit někam jinam, musí explicitně manipulovat se seznamy řízení přístupu (ACL) souborů slovníku, aby byl povolený přístup z kontejnerů aplikací.
  • Aktualizace internetu – Pokud váš editor IME potřebuje aktualizovat své slovníky pomocí dat z internetu, nemůže to spolehlivě provést v kontejneru aplikace, protože přístup k internetu není vždy povolený. Místo toho by váš editor IME měl spustit samostatný desktopový proces, který je zodpovědný za aktualizaci souborů slovníku daty z internetu.
  • On-the-fly learning – Pokud je editor IME spuštěný v kontejneru aplikace, který má přístup k internetu, neexistuje žádné omezení koncových bodů, se kterými může editor IME komunikovat. V tomto případě může IME používat cloudový server k poskytování služeb pro automatické učení. Některé IME stahují a nahrávají uživatelský vstup průběžně, zatímco uživatel píše. Vzhledem k tomu, že přístup k internetu není zaručený v kontejneru aplikací, nemusí být tento přístup vždy povolený.
  • Sdílení informací mezi procesy – ImEs může potřebovat sdílet data o vstupních předvolbách uživatele mezi aplikacemi, které jsou v různých kontejnerech aplikací. Ke sdílení dat mezi aplikacemi použijte webovou službu.

Důležité

Pokud se pokusíte obejít pravidla zabezpečení kontejneru aplikací, může se váš editor IME považovat za malware a zablokovaný.

Editor vstupní metody (IME) a dotyková klávesnice

Vaše IME musí zajistit, že uživatelské rozhraní kandidátského panelu a ostatní prvky rozhraní nejsou zobrazovány pod dotykovou klávesnicí. Dotyková klávesnice se zobrazí ve vyšší vrstvě zobrazení než všechny ostatní aplikace a uživatelské rozhraní editoru IME se zobrazí ve stejné vrstvě zobrazení jako aplikace, kde je aktivní. V důsledku toho se dotyková klávesnice může překrývat a skrýt uživatelské rozhraní editoru IME. Ve většině případů by aplikace měla změnit velikost okna tak, aby zohlednila dotykovou klávesnici. Pokud se velikost aplikace nezmění, může editor IME stále používat rozhraní API InputPane k získání pozice dotykové klávesnice. Editor IME se dotazuje na vlastnost Umístění nebo zaregistruje obslužnou rutinu pro události Zobrazit a Skrýt dotykovou klávesnici. Událost Zobrazit se vyvolá pokaždé, když uživatel klepne do pole pro úpravy, i když je aktuálně zobrazená dotyková klávesnice. Váš editor IME může pomocí tohoto rozhraní API získat místo na obrazovce obsazené dotykovou klávesnicí před vykreslením kandidátského (nebo jiného) uživatelského rozhraní a přeformátovat uživatelské rozhraní IME, aby se zabránilo zobrazení pod dotykovou klávesnicí.

Určení upřednostňovaného rozložení dotykové klávesnice

Editor IME může určit, které rozložení dotykové klávesnice se má použít, a editor IME je povolený pro práci s rozloženími optimalizovanými pro dotykové ovládání. Tato funkce je omezená na imEs pro korejštinu, japonštinu, zjednodušenou čínštinu a tradiční čínštinu.

Dotyková klávesnice podporuje sedm rozložení, z nichž tři jsou klasická rozložení a čtyři rozložení optimalizovaná pro dotykové ovládání. Klasické rozložení vypadají a chovají se jako fyzická klávesnice.

Všechna tři klasická rozložení jsou určená pro zadávání tradiční čínštiny v různých formách:

  • Fonetický vstup
  • Vstup Changjie
  • Vstup Dayi

Kromě klasických rozložení existuje jedno dotykové rozložení optimalizované pro každý z jazyků pro zadávání v korejštině, japonštině, zjednodušené čínštině a tradiční čínštině.

Aby bylo možné tuto funkci použít, musí vaše IME implementovat rozhraní ITfFnGetPreferredTouchKeyboardLayout, které je exportováno pomocí API ITfFunctionProvider v rámci Text Services Framework.

Pokud váš editor IME nepodporuje rozhraní ITfFnGetPreferredTouchKeyboardLayout, bude použití editoru IME obsahovat výchozí klasické rozložení pro jazyk, který se zobrazuje dotykovou klávesnicí.

Pokud váš IME potřebuje nastavit jedno z klasických rozložení jako upřednostňované rozložení, nevyžaduje se žádná další práce na straně IME nad rámec podpory ITfFnGetPreferredTouchKeyboardLayout a ITfFunctionProvider rozhraní. V editoru IME se ale vyžaduje další práce, aby fungovala s rozloženími optimalizovanými pro dotykové ovládání, a to je popsáno v další části.

Rozložení optimalizované pro dotykové ovládání

Dotykové klávesnice optimalizované pro korejštinu, japonštinu, zjednodušenou čínštinu a tradiční čínštinu zobrazují jiné rozložení pro režimy převodu IME On a IME Off. Na dotykové klávesnici je klávesa, která nastaví režim převodu editoru IME na Zapnuto nebo Vypnuto, ale režim editoru IME klávesnice se může také měnit při změně fokusu mezi ovládacími prvky pro úpravy.

Klávesnice optimalizované pro japonštinu, zjednodušenou čínštinu a tradiční čínštinu obsahují klávesu nebo klávesy, které editor IME používá k procházení kandidátských stránek. Pro japonštinu a zjednodušenou čínštinu se v rozložení optimalizovaném pro dotykové ovládání zobrazí klávesa kandidátské stránky. Pro tradiční čínštinu existují samostatné klíče pro předchozí a další kandidátské stránky.

Když stisknete tyto klávesy, dotyková klávesnice zavolá funkci SendInput , která do prioritní aplikace odešle následující znaky oblasti privátního použití Unicode, které může editor IME zachytit a pracovat s těmito znaky:

  • Další stránka (0xF003) – Odesláno, když je kandidátská klávesa stisknuta na dotykové klávesnici optimalizované pro japonštinu a zjednodušenou čínštinu nebo když je další klávesa stránky stisknuta na dotykové klávesnici optimalizované pro tradiční čínštinu.
  • Předchozí stránka (0xF004) – Odesláno, když je klávesa kandidátské stránky současně s klávesou Shift na dotykové klávesnici optimalizovaná pro japonštinu a zjednodušenou čínštinu, nebo když je předchozí klávesa stránky stisknutá na dotykové klávesnici optimalizované pro tradiční čínštinu.

Tyto znaky se posílají jako vstup Unicode. Další odstavec podrobně popisuje, jak extrahovat informace o znaku během oznámení o událostech kláves, které přijme IME v rámci architektury Text Services Framework. Tyto hodnoty znaků nejsou definovány v žádném souboru hlaviček, takže je budete muset definovat ve svém kódu.

Pokud chcete zachytit vstup klávesnice, musí se vaše IME zaregistrovat jako zachytávač událostí kláves. Pro vstup Unicode, který je generován pomocí SendInput funkce, WPARAM parametr ITfKeyEventSink callbacks (OnKeyDown, OnKeyUp, OnTestKeyDown, OnTestKeyUp) vždy obsahuje virtuální klíč VK_PACKET a neidentifikuje znak přímo.

Implementujte následující posloupnost volání pro přístup ke znaku:

// Keyboard state
BYTE abKbdState[256];
if (!GetKeyboardState(abKbdState))
{
   return 0;
}

// Map virtual key to character code
WCHAR wch;
if (ToUnicode(VK_PACKET, 0, abKbdState, &wch, 1, 0) == 1)
{
   return wch;
}

Integrace vyhledávání s IME

Poskytněte uživatelům funkce vyhledávání prostřednictvím kontraktu vyhledávání a integrace s podoknem hledání.

Podokno hledání a návrhy editoru IME
Podokno hledání a návrhy editoru IME

Podokno hledání je centrálním umístěním, kde uživatelé můžou vyhledávat ve všech svých aplikacích. Pro uživatele editoru IME poskytuje Windows jedinečné prostředí vyhledávání, které umožňuje integraci kompatibilních IME s Windows pro vyšší efektivitu a použitelnost.

Uživatelé, kteří zadáváte pomocí editoru IME, který je kompatibilní s vyhledáváním, získají dvě hlavní výhody:

  • Bezproblémová interakce mezi editorem IME a vyhledávacím prostředím Kandidáti editoru IME se zobrazí přímo pod vyhledávacím polem a nezakrývají návrhy hledání. Uživatel může pomocí klávesnice bezproblémově přecházet mezi vyhledávacím polem, kandidáty na převod IME a návrhy vyhledávání.
  • Rychlejší přístup k relevantním výsledkům a návrhům poskytovaným aplikacemi Aplikace má přístup ke všem aktuálním kandidátům na převod, aby poskytovala relevantnější návrhy. Aby bylo možné lépe určit prioritu návrhů hledání, konverze jsou aplikacím přiřazeny podle jejich relevance. Uživatelé najdou a vyberou požadovaný výsledek bez převodu– stačí zadat fonetický text.

Editor IME je kompatibilní s integrovaným vyhledávacím prostředím, pokud splňuje následující kritéria:

Při aktivaci v podokně hledání se kompatibilní editor IME umístí do režimu bez uživatelského rozhraní a nemůže zobrazit jeho uživatelské rozhraní. Místo toho odešle kandidáty na převod do systému Windows, který je zobrazí v seznamu kandidátů v řádku ovládacího prvku, jak je znázorněno na předchozím snímku obrazovky.

IME také odesílá kandidáty, které by se měly použít k provádění aktuálního vyhledávání. Tito kandidáti mohou být stejní jako kandidáti na konverzi, nebo mohou být přizpůsobeni pro vyhledávání.

Vhodné kandidáty pro vyhledávání splňují následující kritéria:

  • Žádné překrytí předpon. Například 北京大学 a北京 jsou redundantní, protože jedna je předponou druhé.
  • Žádní redundantní kandidáti. Všechny redundantní kandidáty nejsou užitečné pro vyhledávání, protože nepomáhají filtrovat výsledky. Například jakýkoli výsledek, který odpovídá 北京大学, také odpovídá 北京.
  • Žádný predikční kandidát, pouze převod. Pokud například uživatel zadá "be", může IME vrátit jako možnost 北, ale nikoli 北京大学. Kandidáti predikce jsou obvykle příliš restriktivní.

ImEs, které nesplňují kritéria, nejsou kompatibilní se zobrazením vyhledávání stejným způsobem jako jiné ovládací prvky a nemůžou využívat integraci uživatelského rozhraní a kandidáty vyhledávání. Aplikace přijímají dotazy až po dokončení vytváření.

Když aplikace, která podporuje kontrakt vyhledávání obdrží dotaz, událost dotazu obsahuje pole "queryTextAlternatives", které obsahuje všechny známé alternativy seřazené od nejrelevantní (s největší pravděpodobností) na nejméně relevantní (nepravděpodobné).

Pokud jsou k dispozici alternativy, měla by aplikace zacházet s každou alternativou jako s dotazem a vracet všechny výsledky, které odpovídají některé z alternativ. Aplikace by se měla chovat stejně, jako kdyby uživatel vystavil více dotazů současně, v podstatě by službě vydával dotaz "nebo", který poskytuje výsledky. V případě důležitých aspektů výkonu aplikace často omezují porovnávání mezi 5 a 20 nejrelevavantnějšími alternativami.

Pokyny k návrhu uživatelského rozhraní

Všechny IME musí dodržovat pokyny pro uživatelskou zkušenost popsané v Design a tvorba aplikací pro Windows.

Nepoužívejte lepkavá okna

Okna editoru IME by se měla zobrazovat jenom v případě potřeby a neměla by být viditelná po celou dobu. Pokud uživatelé nepotřebují psát, okna editoru IME by se neměla zobrazovat. Okno editoru IME by nemělo být okno na celé obrazovce. Okna editoru IME by se neměla vzájemně překrývat. Okna by měla být navržená ve stylu Windows a postupovat podle škálování uživatelského rozhraní.

Ikony editoru IME

Existují dva druhy ikon editoru IME, ikony brandingu a ikony režimu. Všechny ikony editoru IME musí být navržené jenom černobíle. Nové ikony editoru IME si půjčují z glyfického vzhledu ikon na hlavním panelu systému. Tento styl byl vytvořen, aby ho všechny jazyky mohly používat k doplnění familiárního vzhledu a zároveň se navzájem odlišily.

Formát souboru pro ikony editoru IME je ICO. Musíte zadat následující velikosti ikon.

  • 16 × 16 pixelů
  • 20 × 20 pixelů
  • 24x24 pixelů
  • 32 × 32 pixelů
  • 40 × 40 pixelů
  • 48x48 pixelů

Ujistěte se, že jsou ve všech rozlišeních k dispozici 32bitové ikony s alfa kanálem.

Ikony značky editoru IME jsou definovány bílým rámečkem, ve kterém je umístěn typografický glyf vykreslený v moderním písmu. Každý definující glyf je zvolen jednotlivými jazykovými týmy. Glyph je černý. Krabice obsahuje vnější tah o šířce 1 pixelu v černé s 50% průhledností. Nové verze jsou definovány zaobleným rohem v levém horním rohu pole.

Ikony režimu editoru IME jsou definovány bílým typografickým glyfem v moderním písmu, kryté vnějším tahem o 1 pixel v černé barvě při 50% průhlednosti.

Ikona Description
Příklad ikony značky editoru IME pro tradiční čínštinu ChangeJie Příklad ikony značky editoru IME pro tradiční čínštinu ChangeJie
Příklad ikony značky IME pro tradiční čínštinu New ChangeJie. Příklad ikony značky editoru IME pro tradiční čínštinu ChangeJie
Ikona čínského režimu Příklad ikony režimu IME

Vlastněné okno

Aby bylo možné zobrazit kandidátské uživatelské rozhraní, musí editor IME nastavit své okno jako vlastněné, aby se mohlo zobrazit přes aktuálně spuštěnou aplikaci. Pomocí metody ITfContextView::GetWnd získáte okno, ke kterému chcete vlastnit. Pokud GetWnd vrátí chybu nebo NULLHWND, zavolejte funkci GetFocus .

if (FAILED(pView->GetWnd(&parentWndHandle)) || (parentWndHandle == nullptr)) { parentWndHandle = GetFocus(); }

Interakce okna kandidáta editoru IME s povrchy pro zavření světla

Model zavírání automaticky otevíraných oken se nazývá "snadné zavření," protože pro uživatele je snadné tato okna zavřít. Aby IME fungovaly dobře v modelu interakce s Windows, musí se okna editoru IME účastnit modelu lehkého zavření.

Aby se váš editor IME mohl zúčastnit modelu light dismiss, musí vyvolat tři nové události Windows pomocí funkce NotifyWinEvent nebo podobné funkce. Tyto nové události:

  • EVENT_OBJECT_IME_SHOW – Vyvolejte tuto událost, když se IME stane viditelný.
  • EVENT_OBJECT_IME_HIDE – vyvolání této události, když je editor IME skrytý.
  • EVENT_OBJECT_IME_CHANGE – vyvolejte tuto událost, když se IME přesune nebo změní velikost.

Deklarace kompatibility

ImEs deklarují, že jsou kompatibilní registrací kategorie GUID_TFCAT_TIPCAP_IMMERSIVESUPPORT pro svůj IME pomocí ITfCategoryMgr::RegisterCategory.

Nastavení výchozího režimu editoru IME na zapnuto

Poskytujeme lepší uživatelskou architekturu pro imes.

Podpora škálování DPI pro desktopové aplikace

Vylepšená podpora škálování DPI umožňuje dotazování na deklarovanou úroveň povědomí o DPI jednotlivých procesů plochy, aby bylo možné určit, jestli je potřeba škálovat uživatelské rozhraní. Ve scénáři s více monitory systém Windows odpovídajícím způsobem škáluje uživatelské rozhraní pro různá nastavení DPI na každém monitoru.

Vzhledem k tomu, že se váš editor IME spouští v kontextu procesu každé aplikace, neměli byste deklarovat úroveň povědomí o DPI pro váš editor IME. Tím zajistíte, že se váš editor IME spustí na úrovni povědomí o DPI aktuálního procesu.

Pokud chcete zajistit, aby všechny prvky uživatelského rozhraní editoru IME měly paritu škálování s prvky uživatelského rozhraní procesu, ve kterém běžíte, musíte odpovídajícím způsobem reagovat na různé hodnoty DPI.

Poznámka:

Aby byla zajištěna parita s novými desktopovými aplikacemi, měl by váš editor IME podporovat sledování DPI pro jednotlivé monitory, ale neměl by deklarovat úroveň povědomí. Systém v každém scénáři určuje vhodné požadavky na škálování.

Podrobnosti o požadavcích na podporu škálování DPI pro desktopové aplikace najdete v tématu Vysoký DPI.

Instalace editoru IME

Pokud vytváříte editor IME pomocí sady Microsoft Visual Studio, vytvořte prostředí instalace pro váš editor IME pomocí instalačního programu jiného výrobce, jako je InstallShield ze softwaru Flexera Software.

Následující kroky ukazují, jak pomocí InstallShield vytvořit instalační projekt pro knihovnu DLL editoru IME.

  • Nainstalujte sadu Visual Studio.
  • Spusťte Visual Studio.
  • V nabídce Soubor přejděte na Příkaz Nový a vyberte Projekt. Otevře se dialogové okno Nový projekt .
  • V levém podokně přejděte na Šablony > Jiné typy > projektů Instalace a nasazení, klepněte na tlačítko Povolit InstallShield Limited Edition a klepněte na tlačítko OK. Postupujte podle pokynů k instalaci.
  • Restartujte Visual Studio.
  • Otevřete soubor řešení IME (.sln).
  • V Průzkumníku řešení klikněte pravým tlačítkem na řešení, přejděte na příkaz Přidat a vyberte Nový projekt. Otevře se dialogové okno Přidat nový projekt .
  • V ovládacím prvku zobrazení levého stromu přejděte na Šablony > Jiné typy > projektů InstallShield Limited Edition.
  • V prostředním okně klikněte na InstallShield Limited Edition Project.
  • Do textového pole Název zadejte "SetupIME" a klepněte na tlačítko OK.
  • V dialogovém okně Pomocníka s projektem klikněte na Informace o aplikaci.
  • Vyplňte název vaší společnosti a další pole.
  • Klikněte na Soubory aplikace.
  • V levém podokně klikněte pravým tlačítkem na složku [INSTALLDIR] a vyberte Nová složka. Pojmenujte složku Plugins.
  • Klikněte na Přidat soubory. Přejděte do knihovny DLL editoru IME a přidejte ji do složky Plugins . Tento krok opakujte pro slovník editoru IME.
  • Klikněte pravým tlačítkem myši na knihovnu DLL editoru IME a vyberte Vlastnosti. Otevře se dialogové okno Vlastnosti .
  • V dialogovém okně Vlastnosti klikněte na kartu Nastavení COM & .NET.
  • V části Typ registrace vyberte Samoobslužná registrace a klepněte na tlačítko OK.
  • Sestavte řešení. Knihovna IME DLL je sestavena a InstallShield vytvoří soubor setup.exe, který uživatelům umožňuje nainstalovat vaše IME na Windows.

Pokud chcete vytvořit vlastní prostředí instalace, zavolejte metodu ITfInputProcessorProfileMgr::RegisterProfile pro registraci IME během instalace. Nezapisujte položky registru přímo.

Pokud musí být editor IME použitelný ihned po instalaci, zavolejte InstallLayoutOrTip pro přidání editoru IME do uživatelsky povolených metod zadávání pomocí následujícího formátu pro parametr psz:

<LangID 1>:{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}

Přístupnost IME

Implementujte následující konvenci, aby vaše IME splňovaly požadavky na přístupnost a fungovaly s Narrátorem. Aby byly seznamy kandidátů přístupné, musí vaše IME postupovat podle této konvence.

  • Seznam kandidátů musí mít UIA_AutomationIdPropertyId rovnající se "IME_Candidate_Window" pro seznamy kandidátů převodu nebo "IME_Prediction_Window" pro seznamy kandidátů predikce.
  • Když se zobrazí seznam kandidátů a zmizí, vyvolá události typu UIA_MenuOpenedEventId a UIA_MenuClosedEventId.
  • Když se aktuální vybraný kandidát změní, seznam kandidátů vyvolá UIA_SelectionItem_ElementSelectedEventId. Vybraný prvek by měl mít vlastnost UIA_SelectionItemIsSelectedPropertyId rovna hodnotě TRUE.
  • UIA_NamePropertyId pro každou položku v seznamu kandidátů musí být jméno kandidáta. Volitelně můžete prostřednictvím UIA_HelpTextPropertyId poskytnout další informace k rozlišení kandidátů.