I encountered a problem with the input method

My English is not good. Please read my questions patiently. Thank you.
I have a problem with using the empty key input box when using MonoGame. It can’t call system ime. I can’t type Chinese/Japanese. When I asked the author of the emptys key, he told me that monogame does not seem to support ime. I would like to ask if this is the case. Is there any way to let monogame call Ime to support the input method.

To begin with, your written English is very good; so not to worry about it… :slight_smile:

Google has translation library APIs, including one for C# at the following link… Google Translation APIs

I believe what the author of EmptyKeys is saying is that his library does not support this type of translation or any translations for that matter. I didn’t see any references to language translations from a quick look at the EmptyKeys API documentation.

Thank you for being able to read my question. Do you know what GUI class library supports entering Chinese or Japanese?

The Google APIs should support any of the translations that the online functionality does. In this case this would be Chinese “simplified” and “traditional” versions.

However, if you want to type in Chinese characters into an input box you would have to design some form of key-mapping that would allow such characters to be typed into the text-box, if you haven’t already applied such capability. Once entered, then you can take the string of characters and send them to the APIs as the example demonstrates for Russian…

using Google.Cloud.Translation.V2;
using System;

public class QuickStart
{
public static void Main(string[] args)
{
Console.OutputEncoding = System.Text.Encoding.Unicode;
TranslationClient client = TranslationClient.Create();
var response = client.TranslateText(“Hello World.”, “ru”);
Console.WriteLine(response.TranslatedText);
}
}

Ok, I’ll go download and try it! thank you for helping me

However, I think most Chinese people do not understand English. I think it is still more difficult. . I still need the input box to be able to call the system’s IME

What do you mean by the “system IME”?

The issues is that MonoGame has very basic support for keyboard. It does not support any keyboard layouts or any IME input method. Keyboard layouts are not that hard to build on top, which Empty Keys UI does, but IME is different beast.

To be able to support chinese (Sogou Pinyin for example) someone would have to make changes how keyboard works in MonoGame base code.

SDL has IME support: https://wiki.libsdl.org/Tutorials/TextInput

We’d have to come up with an API, but I think the one SDL exposes is pretty good so we might as well just go with that.

Yes, what I want to say is this thing. This thing has troubled me for a long time,Can you help me solve this problem? I can’t start with this