Files
QRGen/gui/src-frontend/public/locales/en/translation.json
T
Serendipity 77fac0e28f feat: i18n 中英双语界面 — i18next + react-i18next
- 安装 i18next / react-i18next / i18next-browser-languagedetector
- 新建 src/i18n.ts 配置(fallback zh)
- 中/英翻译文件各 ~50 条目
- App.tsx 新增 EN/中 语言切换按钮
- ExportPanel + QrPreview + ModePanel + HistoryList + ErrorBoundary
- 全部 7 种模式组件均支持双语
- 12 前端测试通过,tsc 零错误
2026-06-19 21:23:10 +08:00

81 lines
1.6 KiB
JSON

{
"app": {
"title": "QRGen",
"encodingModes": "Encoding Modes",
"exportOptions": "Export Options",
"decode": "Decode"
},
"mode": {
"text": "Text",
"url": "URL",
"wifi": "WiFi",
"vcard": "vCard",
"email": "Email",
"phone": "Phone",
"sms": "SMS"
},
"export": {
"eccLevel": "ECC Level",
"moduleSize": "Module Size",
"margin": "Margin",
"copySvg": "Copy SVG",
"exportPng": "Export PNG",
"exportSvg": "Export SVG",
"exporting": "Exporting...",
"selectImage": "Select Image to Decode",
"decoding": "Decoding..."
},
"preview": {
"loading": "Generating...",
"empty": "Enter content to generate QR code",
"version": "Version",
"mask": "Mask"
},
"history": {
"title": "History",
"clear": "Clear",
"empty": "No records"
},
"wifi": {
"ssid": "SSID",
"password": "Password",
"none": "None",
"hidden": "Hidden"
},
"vcard": {
"name": "Name",
"phone": "Phone",
"email": "Email",
"company": "Company",
"address": "Address"
},
"email": {
"to": "To",
"subject": "Subject",
"body": "Body"
},
"phone": {
"placeholder": "Enter phone number"
},
"sms": {
"number": "Phone Number",
"message": "Message"
},
"text": {
"placeholder": "Enter text..."
},
"error": {
"appError": "Application Error",
"reload": "Reload",
"decodeFailed": "Decode Failed",
"exportPngFailed": "PNG Export Failed",
"exportSvgFailed": "SVG Export Failed",
"copyFailed": "Copy Failed"
},
"dialog": {
"imageFiles": "Image Files",
"pngImage": "PNG Image",
"svgImage": "SVG Image"
}
}