Translate an iOS app into Simplified Chinese
Upload your Localizable.strings or .xcstrings String Catalog and Manuce translates the values into Simplified Chinese, returning the same file ready to drop back into Xcode, with a report of what was translated and what was left as is. Keys, format specifiers such as %@ or %1$@ and the file structure stay untouched.
What it costs
For the language files of a iOS app totalling about 2,000 words, into Chinese (Simplified):
To understand, internal use.
Ready to send, by the technical specialist.
Cross-checked. For documents that commit you.
Price for one language, original layout included. VAT not applicable — article 293 B of the French General Tax Code (CGI). The exact quote, based on your file's word count, is shown before you pay.
What Simplified Chinese changes in an iOS interface
A Chinese string has two to three times fewer characters than its English source, but each character is roughly as wide as two Latin letters. The space it takes on screen therefore changes little. A button reading Save changes becomes 保存更改: four characters that fill much the same frame. Do not count on Chinese to free up room.
Three practical points:
- No spaces between words. A multi-line label can break between any two characters, and a long title truncated with
…may lose its key term at the end. - Full-width punctuation.
Error: %@becomes错误:%@, questions end with?, the ellipsis is……and quotation marks are“ ”. - Fonts. A Latin custom font bundled with your app has no Chinese glyphs. iOS falls back to a Chinese system font (PingFang SC), which can mix weights and heights when Latin and Chinese share one label.
Plurals, placeholders and word order
Chinese has a single CLDR plural category: other. In a String Catalog, your source language's one and other variations collapse into one form. %d photo / %d photos both become %d 张照片, whatever the number.
Chinese does, however, require a measure word between the number and the noun, and it depends on the object: 张 for a photo, 条 for a message (%d 条消息), 个 for many others. That is one more reason never to build a sentence by gluing a number to a separately translated word.
Word order often shifts. %1$@ liked %2$@'s photo becomes %1$@ 赞了 %2$@ 的照片; in other sentences the arguments swap places. If your source uses %@ twice without positions, switch to %1$@ and %2$@ before translation so the Chinese sentence can put each argument where the grammar needs it.
What Manuce returns, and what it does not do
Manuce supports Localizable.strings (UTF-8 or UTF-16) and the Xcode String Catalog .xcstrings. In a catalog, the target language is added, plural variations included. You get back the same file: indentation, key order, quotes, comments, line endings, encoding and BOM preserved; only the values change.
- The specifiers
%@,%dand%1$@are checked. Each translated value is compared with its source (placeholders, tags); if a mismatch persists, the source value is kept and the report says so. - Not translated: keys, empty values, URLs, email addresses, numbers, colours, date formats, identifiers and anything marked as not translatable.
- The report lists the strings translated and those left as is, with the reason.
Manuce does not touch your project: it does not add the language in Xcode, change fonts or layout constraints, or test the interface. Traditional Chinese (Taiwan, Hong Kong) is a separate language, ordered on its own. Manuce does not provide sworn or certified translation either, which may matter for terms of use with legal weight.
Preparing your files
- Comment ambiguous strings. Share can be a button verb (
分享) or a screen title. A short Chinese string with no context often has several plausible translations; file comments are preserved and act as context. - Mark what must stay in Latin script. App name, plan names, brand terms: if they should not be translated, mark them as not translatable in the catalog.
- Keep dates and prices out of strings. Chinese writes dates as
2025年3月14日and yuan with¥: letDateFormatterandNumberFormatterproduce them for the region and keep a plain%@in the string. - Decide on the form of address. The polite
您suits banking or insurance,你a consumer app. The free sample shows the register used before you pay. - Include permission prompts. Camera or location usage texts often live in a separate
InfoPlist.xcstrings: upload it too, or those dialogs will stay in the source language.
Checking in Xcode and on device
With a .strings file, place the translated version in the zh-Hans.lproj folder; with a catalog, check that the language appears under the code your project expects (zh-Hans for Simplified Chinese, not zh-Hant). Then run the app with language set to Chinese and region set to mainland China.
- Go through the densest screens: tab bars, alerts, list cells. Look for line breaks splitting a two-character term, and for truncation.
- Increase the text size (Dynamic Type): characters squeezed to fit become unreadable sooner than letters do.
- Check labels mixing Latin and Chinese, such as
Wi-Fi 已连接, for font consistency. - Review the strings the report kept in the source language and fix any malformed specifier in the source.
In practice
- Switch multiple arguments to positional form (%1$@, %2$@) and comment ambiguous strings.
- Upload Localizable.strings or the .xcstrings catalog, choose Simplified Chinese and read the free sample.
- Download the translated file and the report of strings left unchanged.
- Put the file back in zh-Hans.lproj or the project, then test with Chinese language and region.
Frequently asked questions
What happens to my plural variations in Chinese?
Chinese has one CLDR category, other. The language is added to the String Catalog with that single form, used for every number. The noun takes a suitable measure word, for example %d 条消息 for messages.
Do I need to allow more space for Chinese?
The text is two to three times shorter in characters, but each character is wider, so the space taken changes little. The real risks are line breaks between characters and font fallback. Test dense screens and large text sizes.
Does the same file work for Taiwan and Hong Kong?
No. Taiwan and Hong Kong use Traditional Chinese, a separate language at Manuce that belongs in zh-Hant. Order it separately if you target those markets; from two languages, a discount applies to the whole order.
Could my keys or %@ placeholders be altered?
Keys are never translated and the specifiers %@, %d and %1$@ are checked. Each value is compared with its source; if a mismatch persists, the source value is kept and the report flags it.
Why does Chinese cost more?
Simplified Chinese carries a ×1.6 coefficient on the per-word rate. The quote, shown as soon as you upload, counts only the words in the values, excluding keys and tags.
The specialist in charge
This subject goes to Dédale, the technical specialist. See how it works.
The same file, into another language
Into Chinese (Simplified), other files
See also
Try it on your own file, free
A sample of your file translated at the level you choose, before any payment. You judge, then you decide.