You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(i18n): localize all 21 Image tool UIs to Bahasa (wave 2)
Every Image island renders Bahasa on /id/ via the lang prop + local TR:{en,id}
(LegacyLetter pattern). Covers convert/view/svg, monochrome, compress/resize/crop,
annotate, watermark/stamp/qr/merge, upscale, object-remove, portrait/face blur,
OCR + receipt scanner, camera, background remove, metadata scrub. Also threads lang
through shared OcrWorkbench/ReceiptFields/CameraCapture. Logic untouched;
format/brand/acronym terms kept; no 'alat'.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ubfx4XocHcECaL8twp9zsr
dropSub: 'Removes the background with an on-device AI model · or paste (⌘V)',
35
+
privacyNote: "Runs entirely in your browser — the image never leaves your device. The first run downloads the AI model (~40 MB), then it's cached for next time.",
36
+
working: 'Working…',
37
+
result: 'Result',
38
+
transparentPng: 'transparent PNG',
39
+
altRemoved: 'Background removed',
40
+
downloadPng: 'Download PNG',
41
+
},
42
+
id: {
43
+
preparing: 'Menyiapkan…',
44
+
downloadingModel: 'Mengunduh model AI…',
45
+
removingBg: 'Menghapus latar belakang…',
46
+
removeFailed: 'Gagal menghapus latar belakang.',
47
+
dropHere: 'Jatuhkan gambar atau klik untuk menjelajah',
48
+
dropSub: 'Menghapus latar belakang dengan model AI di perangkat · atau tempel (⌘V)',
49
+
privacyNote: 'Berjalan sepenuhnya di browser Anda — gambar tidak pernah meninggalkan perangkat Anda. Jalankan pertama kali mengunduh model AI (~40 MB), lalu disimpan di cache untuk berikutnya.',
50
+
working: 'Memproses…',
51
+
result: 'Hasil',
52
+
transparentPng: 'PNG transparan',
53
+
altRemoved: 'Latar belakang dihapus',
54
+
downloadPng: 'Unduh PNG',
55
+
},
56
+
};
57
+
58
+
exportdefaultfunctionBackgroundRemove({ lang ='en'}: {lang?: Lang}){
privacy: <>Runs entirely in your browser — the image never leaves your device. Detection is automatic; for privacy-critical images, prefer <strong>Solid</strong> (blur/pixelate can be partly reversed). The first run downloads a small model, then it's cached.</>,
privacy: <>Berjalan sepenuhnya di browser Anda — gambar tidak pernah meninggalkan perangkat Anda. Deteksi berjalan otomatis; untuk gambar yang sangat sensitif, pilih <strong>Blok</strong> (blur/piksel bisa sebagian dipulihkan). Penggunaan pertama mengunduh model kecil, lalu di-cache.</>,
50
+
loadingDetector: 'Memuat pendeteksi wajah…',
51
+
detecting: 'Mendeteksi wajah…',
52
+
working: 'Memproses…',
53
+
errProcess: 'Tidak dapat memproses gambar ini.',
54
+
noFaces: 'Tidak ada wajah terdeteksi pada gambar ini.',
55
+
result: 'Hasil',
56
+
facesHidden: (n)=>`${n} wajah disembunyikan`,
57
+
altBlurred: 'Wajah diburamkan',
58
+
downloadPng: 'Unduh PNG',
59
+
},
60
+
};
61
+
21
62
// Cache the detector across runs so the model loads once.
0 commit comments