What "translation.xml" are you referring to? The one in your custom framework folder?

About this remark:

The value is correct for English and French but stay in English for Portuguese, Spanish and Chinese.

Did you set the default locale to the corresponding language in your Java code before initializing the AuthorComponentFactory?
It will not be enough I'm afraid.
If you open the "oxygen-18.1.0.0.jar" in a zip utility, it will contain a "languageList.properties" file. Those are the only language our code knows of. So you would also need to update that properties file with more languages.
In the same JAR there are also files like "Messages_en_US.properties" containing translations for all the Oxygen common keys in that specific language.
You will probably need to create such files also for your languages. There are a lot of keys so probably for starters you will just copy the content of the English translation properties file.
These keys are used for error messages and various common action names which are not contributed by the framework.
But once the ""languageList.properties"" has been modified to contain the additional languages, and the default locale has been set to one of those languages, Oxygen should also pick up from the framework "translation.xml" the translations for those specific languages for the framework keys.