feat(i18n): raise translation coverage across all 20 locales (#332)

Close genuinely-untranslated UI strings and fix orthography/diacritic
errors across every non-English locale, while keeping legitimate cognates,
loanwords, and technical tokens (OIDC, SAML, PDF, YAML, brand names) as-is.

- Untranslated strings closed: 225 (976 -> 751 remaining; the remainder are
  legit cognates / brand / format tokens that natives keep in English)
- Orthography: Italian 52 accent fixes (verb forms, a/e/i finals), Vietnamese
  41 strings with restored tone marks, Turkish 35, Polish 42, Dutch 17 (trema),
  plus smaller passes in es/fr/sv/pt-BR
- Biggest gap wins: Indonesian 102 -> 72; every CJK/Cyrillic/Arabic/Indic
  locale roughly halved its English leftovers

Cross-locale key parity preserved exactly; all placeholders intact.

Verified: pnpm typecheck, i18n parity/locale/tool-i18n tests (43/43),
placeholder-integrity check (0 mismatches), Biome.
This commit is contained in:
SnapOtter
2026-06-23 00:10:13 +08:00
committed by GitHub
parent 7a70affac5
commit ffbf4f9e10
20 changed files with 432 additions and 431 deletions
+11 -11
View File
@@ -68,8 +68,8 @@ export const ar: TranslationKeys = {
},
modalities: {
image: "صورة",
video: "Video",
audio: "Audio",
video: "فيديو",
audio: "صوت",
documentsAndFiles: "PDF وملفات",
},
tools: {
@@ -1528,9 +1528,9 @@ export const ar: TranslationKeys = {
errorFailed: "فشل التقاط الصفحة",
placeholder: "أدخل عنوان URL واضغط التقاط",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "سطح المكتب",
tablet: "جهاز لوحي",
mobile: "هاتف محمول",
custom: "مخصص",
},
},
@@ -1827,7 +1827,7 @@ export const ar: TranslationKeys = {
progressLabel: "جارٍ إنشاء GIF",
},
"resize-video": {
preset: "Preset",
preset: "إعداد مسبق",
width: "العرض (px)",
height: "الارتفاع (px)",
hint: "اترك أحد الأبعاد فارغًا للحفاظ على نسبة العرض إلى الارتفاع",
@@ -1865,7 +1865,7 @@ export const ar: TranslationKeys = {
brightness: "السطوع",
contrast: "التباين",
saturation: "التشبع",
gamma: "Gamma",
gamma: "غاما",
submit: "تطبيق",
submitBatch: "تطبيق ({count} ملفات)",
progressLabel: "جارٍ ضبط الألوان",
@@ -2121,7 +2121,7 @@ export const ar: TranslationKeys = {
strip: "إزالة جميع البيانات الوصفية",
title: "العنوان",
artist: "الفنان",
album: "Album",
album: "الألبوم",
submit: "تطبيق البيانات الوصفية",
submitBatch: "تطبيق البيانات الوصفية ({count} ملفات)",
progressLabel: "جارٍ تطبيق البيانات الوصفية",
@@ -2224,7 +2224,7 @@ export const ar: TranslationKeys = {
progressLabel: "جارٍ التشفير",
},
"unlock-pdf": {
password: "Password",
password: "كلمة المرور",
submit: "إلغاء القفل",
submitBatch: "إلغاء القفل ({count} ملفات)",
progressLabel: "جارٍ فك التشفير",
@@ -2942,7 +2942,7 @@ export const ar: TranslationKeys = {
runsColumn: "التشغيلات",
userColumn: "المستخدم",
bytesInColumn: "البايتات الواردة",
poolColumn: "Pool",
poolColumn: "المجموعة",
p50Column: "p50",
p95Column: "p95",
storageHeading: "تخزين المكتبة",
@@ -3235,7 +3235,7 @@ export const ar: TranslationKeys = {
toolsUsed: "الأدوات المستخدمة",
none: "لا شيء",
delete: "حذف",
pipeline: "Pipeline",
pipeline: "سلسلة المعالجة",
download: "تنزيل",
},
dropzone: {
+4 -4
View File
@@ -1547,7 +1547,7 @@ export const de: TranslationKeys = {
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Mobil",
custom: "Benutzerdefiniert",
},
},
@@ -1844,7 +1844,7 @@ export const de: TranslationKeys = {
progressLabel: "GIF wird erstellt",
},
"resize-video": {
preset: "Preset",
preset: "Voreinstellung",
width: "Breite (px)",
height: "Höhe (px)",
hint: "Ein Feld leer lassen, um das Seitenverhältnis beizubehalten",
@@ -2241,7 +2241,7 @@ export const de: TranslationKeys = {
progressLabel: "Wird verschlüsselt",
},
"unlock-pdf": {
password: "Password",
password: "Passwort",
submit: "Entsperren",
submitBatch: "Entsperren ({count} Dateien)",
progressLabel: "Wird entschlüsselt",
@@ -3241,7 +3241,7 @@ export const de: TranslationKeys = {
},
nav: {
tools: "Werkzeuge",
reader: "Reader",
reader: "Leser",
automate: "Automatisieren",
editor: "Editor",
files: "Dateien",
+20 -19
View File
@@ -20,7 +20,7 @@ export const es: TranslationKeys = {
next: "Siguiente",
clear: "Limpiar",
copy: "Copiar",
copied: "Copiado!",
copied: "¡Copiado!",
noResults: "No se encontraron resultados",
showLess: "Mostrar menos",
showMore: "Mostrar {count} más",
@@ -1028,7 +1028,7 @@ export const es: TranslationKeys = {
quality: "Calidad",
fast: "Rápido",
hd: "HD",
max: "Max",
max: "Máx",
ultra: "Ultra",
background: "Fondo",
transparent: "Transparente",
@@ -1470,7 +1470,7 @@ export const es: TranslationKeys = {
downloadDiff: "Descargar diferencia",
},
"find-duplicates": {
preset: "Preset",
preset: "Preajuste",
exact: "Exacto",
similar: "Similares",
loose: "Amplio",
@@ -1493,7 +1493,7 @@ export const es: TranslationKeys = {
text: "Texto",
wifi: "WiFi",
vcard: "vCard",
email: "Email",
email: "Correo electrónico",
phone: "Teléfono",
sms: "SMS",
styling: "Estilo",
@@ -1528,9 +1528,9 @@ export const es: TranslationKeys = {
errorFailed: "Error al capturar la página",
placeholder: "Ingresa una URL y haz clic en Capturar",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "Escritorio",
tablet: "Tableta",
mobile: "Móvil",
custom: "Personalizado",
},
},
@@ -1607,7 +1607,7 @@ export const es: TranslationKeys = {
progressLabel: "Agregando borde",
},
beautify: {
preset: "Preset",
preset: "Preajuste",
backgroundType: "Tipo de fondo",
solidColor: "Color sólido",
linearGradient: "Degradado lineal",
@@ -1697,7 +1697,7 @@ export const es: TranslationKeys = {
progressLabel: "Convirtiendo SVG",
},
vectorize: {
preset: "Preset",
preset: "Preajuste",
logo: "Logo",
illustration: "Ilustración",
photo: "Foto",
@@ -1725,7 +1725,7 @@ export const es: TranslationKeys = {
reverse: "Invertir",
extract: "Extraer",
rotateMode: "Rotar",
pixel: "Pixel",
pixel: "Píxel",
percentage: "Porcentaje",
colors: "Colores",
dither: "Difuminado",
@@ -1827,7 +1827,7 @@ export const es: TranslationKeys = {
progressLabel: "Creando GIF",
},
"resize-video": {
preset: "Preset",
preset: "Preajuste",
width: "Ancho (px)",
height: "Alto (px)",
hint: "Deja una dimensión vacía para mantener la proporción",
@@ -2121,7 +2121,7 @@ export const es: TranslationKeys = {
strip: "Eliminar todos los metadatos",
title: "Título",
artist: "Artista",
album: "Album",
album: "Álbum",
submit: "Aplicar metadatos",
submitBatch: "Aplicar metadatos ({count} archivos)",
progressLabel: "Aplicando metadatos",
@@ -2224,7 +2224,7 @@ export const es: TranslationKeys = {
progressLabel: "Cifrando",
},
"unlock-pdf": {
password: "Password",
password: "Contraseña",
submit: "Desbloquear",
submitBatch: "Desbloquear ({count} archivos)",
progressLabel: "Descifrando",
@@ -2812,7 +2812,7 @@ export const es: TranslationKeys = {
createSuccess: "Usuario creado correctamente",
createFailed: "Error al crear el usuario",
userLimitReached: "Límite de usuarios alcanzado ({max} máximo)",
deleteConfirm: 'Eliminar usuario "{username}"? Esta acción no se puede deshacer.',
deleteConfirm: '¿Eliminar usuario "{username}"? Esta acción no se puede deshacer.',
deleteSuccess: 'Usuario "{username}" eliminado',
deleteFailed: "Error al eliminar el usuario",
editHeading: "Editar {username}",
@@ -2837,7 +2837,7 @@ export const es: TranslationKeys = {
deleteUserAction: "Eliminar usuario",
saveButton: "Guardar",
copyPasswordButton: "Copiar contraseña",
passwordCopied: "Copiado!",
passwordCopied: "¡Copiado!",
copyPasswordWarning:
"Copia esta contraseña ahora. No podrás verla después de crear el usuario.",
},
@@ -2854,7 +2854,7 @@ export const es: TranslationKeys = {
duplicateTeamError: "Ya existe un equipo con ese nombre",
renameSuccess: "Equipo renombrado",
renameFailed: "Error al renombrar el equipo",
deleteConfirm: 'Eliminar equipo "{name}"? Los miembros serán desasignados.',
deleteConfirm: '¿Eliminar equipo "{name}"? Los miembros serán desasignados.',
deleteSuccess: 'Equipo "{name}" eliminado',
deleteFailed: "Error al eliminar el equipo",
cannotDeleteDefault: "No se puede eliminar el equipo predeterminado o un equipo con miembros",
@@ -2896,8 +2896,8 @@ export const es: TranslationKeys = {
editCancelButton: "Cancelar",
updateSuccess: "Rol actualizado",
updateFailed: "Error al actualizar el rol",
deleteConfirm: 'Eliminar rol "{name}"? {count} usuario(s) deberán ser reasignados.',
deleteConfirmSimple: 'Eliminar rol "{name}"?',
deleteConfirm: '¿Eliminar rol "{name}"? {count} usuario(s) deberán ser reasignados.',
deleteConfirmSimple: '¿Eliminar rol "{name}"?',
deleteSuccess: 'Rol "{name}" eliminado',
deleteFailed: "Error al eliminar el rol",
emptyState: "No se encontraron roles.",
@@ -2979,7 +2979,8 @@ export const es: TranslationKeys = {
scopedPrefix: "Alcance:",
expiresPrefix: "Expira {date}",
deleteKeyTitle: "Eliminar clave",
deleteConfirm: "Eliminar esta clave API? Las integraciones que la usen dejarán de funcionar.",
deleteConfirm:
"¿Eliminar esta clave API? Las integraciones que la usen dejarán de funcionar.",
emptyState: "Aún no hay claves API. Genera una para comenzar.",
},
tools: {
+9 -9
View File
@@ -68,7 +68,7 @@ export const fr: TranslationKeys = {
},
modalities: {
image: "Image",
video: "Video",
video: "Vidéo",
audio: "Audio",
documentsAndFiles: "PDF & fichiers",
},
@@ -1493,7 +1493,7 @@ export const fr: TranslationKeys = {
downloadDiff: "Télécharger la différence",
},
"find-duplicates": {
preset: "Preset",
preset: "Préréglage",
exact: "Exact",
similar: "Similaire",
loose: "Large",
@@ -1551,8 +1551,8 @@ export const fr: TranslationKeys = {
errorFailed: "Impossible de capturer la page",
placeholder: "Saisissez une URL et cliquez sur Capturer",
presets: {
desktop: "Desktop",
tablet: "Tablet",
desktop: "Bureau",
tablet: "Tablette",
mobile: "Mobile",
custom: "Personnalisé",
},
@@ -1630,7 +1630,7 @@ export const fr: TranslationKeys = {
progressLabel: "Ajout de la bordure",
},
beautify: {
preset: "Preset",
preset: "Préréglage",
backgroundType: "Type de fond",
solidColor: "Couleur unie",
linearGradient: "Dégradé linéaire",
@@ -1720,7 +1720,7 @@ export const fr: TranslationKeys = {
progressLabel: "Conversion du SVG",
},
vectorize: {
preset: "Preset",
preset: "Préréglage",
logo: "Logo",
illustration: "Illustration",
photo: "Photo",
@@ -1850,7 +1850,7 @@ export const fr: TranslationKeys = {
progressLabel: "Création du GIF",
},
"resize-video": {
preset: "Preset",
preset: "Préréglage",
width: "Largeur (px)",
height: "Hauteur (px)",
hint: "Laissez une dimension vide pour conserver le ratio",
@@ -2247,7 +2247,7 @@ export const fr: TranslationKeys = {
progressLabel: "Chiffrement",
},
"unlock-pdf": {
password: "Password",
password: "Mot de passe",
submit: "Déverrouiller",
submitBatch: "Déverrouiller ({count} fichiers)",
progressLabel: "Déchiffrement",
@@ -2904,7 +2904,7 @@ export const fr: TranslationKeys = {
roles: {
heading: "Rôles",
description:
"Gérez les rôles et leurs permissions. Les rôles prédéfinies ne peuvent pas être modifiés.",
"Gérez les rôles et leurs permissions. Les rôles prédéfinis ne peuvent pas être modifiés.",
createButton: "Créer un rôle personnalisé",
newRoleHeading: "Nouveau rôle",
roleNamePlaceholder: "Nom du rôle",
+13 -13
View File
@@ -68,8 +68,8 @@ export const hi: TranslationKeys = {
},
modalities: {
image: "इमेज",
video: "Video",
audio: "Audio",
video: "वीडियो",
audio: "ऑडियो",
documentsAndFiles: "PDF और फ़ाइलें",
},
tools: {
@@ -1099,7 +1099,7 @@ export const hi: TranslationKeys = {
language: "भाषा",
autoDetect: "ऑटो-डिटेक्ट",
pages: "पेज",
pagesPlaceholder: "all, 1-3, 5",
pagesPlaceholder: "सभी, 1-3, 5",
pagesHint: "पेज नंबर या रेंज दर्ज करें (जैसे 1-3, 5, 8-10)। अधिकतम 50 पेज।",
submit: "टेक्स्ट निकालें",
submitBatch: "टेक्स्ट निकालें ({count} फाइलें)",
@@ -1456,7 +1456,7 @@ export const hi: TranslationKeys = {
channelStats: "चैनल आँकड़े",
yes: "हाँ",
no: "नहीं",
na: "N/A",
na: "लागू नहीं",
failedToRead: "जानकारी पढ़ने में विफल",
},
compare: {
@@ -1524,9 +1524,9 @@ export const hi: TranslationKeys = {
errorFailed: "पेज कैप्चर करने में विफल",
placeholder: "URL दर्ज करें और कैप्चर पर क्लिक करें",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "डेस्कटॉप",
tablet: "टैबलेट",
mobile: "मोबाइल",
custom: "कस्टम",
},
},
@@ -1823,7 +1823,7 @@ export const hi: TranslationKeys = {
progressLabel: "GIF बन रहा है",
},
"resize-video": {
preset: "Preset",
preset: "प्रीसेट",
width: "चौड़ाई (px)",
height: "ऊँचाई (px)",
hint: "पक्षानुपात बनाए रखने के लिए एक माप खाली छोड़ें",
@@ -1861,7 +1861,7 @@ export const hi: TranslationKeys = {
brightness: "चमक",
contrast: "कंट्रास्ट",
saturation: "संतृप्ति",
gamma: "Gamma",
gamma: "गामा",
submit: "लागू करें",
submitBatch: "लागू करें ({count} फ़ाइलें)",
progressLabel: "रंग समायोजित हो रहा है",
@@ -2117,7 +2117,7 @@ export const hi: TranslationKeys = {
strip: "सभी मेटाडेटा हटाएँ",
title: "शीर्षक",
artist: "कलाकार",
album: "Album",
album: "एल्बम",
submit: "मेटाडेटा लागू करें",
submitBatch: "मेटाडेटा लागू करें ({count} फ़ाइलें)",
progressLabel: "मेटाडेटा लागू हो रहा है",
@@ -2220,7 +2220,7 @@ export const hi: TranslationKeys = {
progressLabel: "एन्क्रिप्ट हो रहा है",
},
"unlock-pdf": {
password: "Password",
password: "पासवर्ड",
submit: "अनलॉक करें",
submitBatch: "अनलॉक करें ({count} फ़ाइलें)",
progressLabel: "डिक्रिप्ट हो रहा है",
@@ -2937,7 +2937,7 @@ export const hi: TranslationKeys = {
runsColumn: "रन",
userColumn: "उपयोगकर्ता",
bytesInColumn: "बाइट्स इन",
poolColumn: "Pool",
poolColumn: "पूल",
p50Column: "p50",
p95Column: "p95",
storageHeading: "लाइब्रेरी स्टोरेज",
@@ -3230,7 +3230,7 @@ export const hi: TranslationKeys = {
toolsUsed: "उपयोग किए गए टूल",
none: "कोई नहीं",
delete: "हटाएं",
pipeline: "Pipeline",
pipeline: "पाइपलाइन",
download: "डाउनलोड",
},
dropzone: {
+31 -31
View File
@@ -28,7 +28,7 @@ export const id: TranslationKeys = {
enabled: "Aktif",
disabled: "Nonaktif",
rename: "Ganti nama",
edit: "Edit",
edit: "Sunting",
actions: "Tindakan",
create: "Buat",
or: "atau",
@@ -44,7 +44,7 @@ export const id: TranslationKeys = {
essentials: "Dasar",
adjustments: "Penyesuaian",
enhance: "Penyempurnaan & AI",
watermark: "Watermark & Overlay",
watermark: "Watermark & Hamparan",
layout: "Tata Letak & Komposisi",
utilities: "Utilitas",
optimization: "Optimasi",
@@ -54,7 +54,7 @@ export const id: TranslationKeys = {
"video-effects": "Efek & Komposisi",
"video-subtitles": "Subtitle",
"video-metadata": "Metadata",
"audio-edit": "Edit",
"audio-edit": "Sunting",
"audio-convert": "Konversi",
"audio-effects": "Efek & Komposisi",
"audio-metadata": "Metadata",
@@ -103,7 +103,7 @@ export const id: TranslationKeys = {
description: "Hapus EXIF, GPS, dan info kamera",
},
"edit-metadata": {
name: "Edit Metadata",
name: "Sunting Metadata",
description: "Edit EXIF, IPTC, XMP, GPS, kata kunci, dan tanggal",
},
"bulk-rename": {
@@ -313,7 +313,7 @@ export const id: TranslationKeys = {
description: "Terapkan efek pikselasi pada seluruh gambar atau area tertentu",
},
vignette: {
name: "Vignette",
name: "Vignet",
description: "Tambahkan efek vignette dengan intensitas dan warna yang dapat diatur",
},
"gif-webp": {
@@ -617,7 +617,7 @@ export const id: TranslationKeys = {
description: "Tata beberapa halaman per lembar",
},
"booklet-pdf": {
name: "Booklet PDF",
name: "Buklet PDF",
description: "Tata halaman untuk dilipat menjadi buklet",
},
"watermark-pdf": {
@@ -964,9 +964,9 @@ export const id: TranslationKeys = {
saturation: "Saturasi",
temperature: "Suhu Warna",
temperatureHint: "dingin / hangat",
tint: "Tint",
tint: "Semburat",
tintHint: "hijau / magenta",
hue: "Hue",
hue: "Rona",
detail: "Detail",
sharpness: "Ketajaman",
effects: "Efek",
@@ -1303,7 +1303,7 @@ export const id: TranslationKeys = {
colorIntensity: "Intensitas Warna",
grayscaleLabel: "Skala abu-abu",
subtleLabel: "Halus",
naturalLabel: "Natural",
naturalLabel: "Alami",
vividLabel: "Cerah",
intensityHint: "Nilai lebih rendah menghasilkan warna yang lebih redup, bergaya vintage.",
strength: "Kekuatan Pewarnaan",
@@ -1540,7 +1540,7 @@ export const id: TranslationKeys = {
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Ponsel",
custom: "Kustom",
},
},
@@ -1553,7 +1553,7 @@ export const id: TranslationKeys = {
barcodesFoundPlural: "{count} barcode ditemukan",
},
collage: {
template: "Template",
template: "Templat",
aspectRatio: "Rasio Aspek",
gap: "Jarak",
cornerRadius: "Radius Sudut",
@@ -1567,7 +1567,7 @@ export const id: TranslationKeys = {
direction: "Arah",
horizontal: "Horizontal",
vertical: "Vertikal",
grid: "Grid",
grid: "Kisi",
gridColumns: "Kolom Grid",
resizeMode: "Mode Ukuran",
fit: "Pas",
@@ -1587,7 +1587,7 @@ export const id: TranslationKeys = {
submit: "Jahit Gambar",
},
split: {
modeGrid: "Grid",
modeGrid: "Kisi",
modeTileSize: "Ukuran Ubin",
presets: "Preset",
columns: "Kolom",
@@ -1676,7 +1676,7 @@ export const id: TranslationKeys = {
},
"lqip-placeholder": {
width: "Lebar",
blur: "Blur",
blur: "Buram",
submit: "Buat Placeholder",
submitBatch: "Buat Placeholder ({count} file)",
progressLabel: "Membuat placeholder",
@@ -1850,8 +1850,8 @@ export const id: TranslationKeys = {
height: "Tinggi (px)",
x: "Offset X",
y: "Offset Y",
submit: "Crop",
submitBatch: "Crop ({count} file)",
submit: "Potong",
submitBatch: "Potong ({count} file)",
progressLabel: "Meng-crop",
},
"rotate-video": {
@@ -1921,7 +1921,7 @@ export const id: TranslationKeys = {
opacity: "Opasitas",
color: "Warna",
colorHint: "Warna HEX, mis. #ffffff",
submit: "Watermark",
submit: "Beri Watermark",
submitBatch: "Watermark ({count} file)",
progressLabel: "Menambah watermark",
},
@@ -2026,7 +2026,7 @@ export const id: TranslationKeys = {
progressLabel: "Mengekstrak",
},
"volume-adjust": {
"gain-db": "Gain (dB)",
"gain-db": "Penguatan (dB)",
submit: "Atur Volume",
submitBatch: "Atur Volume ({count} file)",
progressLabel: "Mengatur volume",
@@ -2234,7 +2234,7 @@ export const id: TranslationKeys = {
progressLabel: "Mengenkripsi",
},
"unlock-pdf": {
password: "Password",
password: "Kata sandi",
submit: "Buka Kunci",
submitBatch: "Buka Kunci ({count} file)",
progressLabel: "Mendekripsi",
@@ -2283,7 +2283,7 @@ export const id: TranslationKeys = {
fontSize: "Ukuran font",
opacity: "Opasitas",
rotation: "Rotasi",
submit: "Watermark",
submit: "Beri Watermark",
submitBatch: "Watermark ({count} file)",
progressLabel: "Memberi watermark",
},
@@ -2516,7 +2516,7 @@ export const id: TranslationKeys = {
editor: {
menu: {
file: {
label: "File",
label: "Berkas",
new: "Baru",
open: "Buka",
save: "Simpan",
@@ -2525,7 +2525,7 @@ export const id: TranslationKeys = {
close: "Tutup",
},
edit: {
label: "Edit",
label: "Sunting",
undo: "Urungkan",
redo: "Ulangi",
cut: "Potong",
@@ -2591,7 +2591,7 @@ export const id: TranslationKeys = {
filter: {
label: "Filter",
blur: {
label: "Blur",
label: "Buram",
gaussian: "Blur Gaussian",
motion: "Blur Gerakan",
radial: "Blur Radial",
@@ -2614,7 +2614,7 @@ export const id: TranslationKeys = {
},
stylize: {
label: "Stilisasi",
emboss: "Emboss",
emboss: "Timbul",
solarize: "Solarisasi",
posterize: "Posterisasi",
},
@@ -2631,7 +2631,7 @@ export const id: TranslationKeys = {
rulers: "Penggaris",
grid: "Kisi",
guides: "Panduan",
snap: "Snap",
snap: "Paskan",
panels: "Panel",
},
},
@@ -2663,7 +2663,7 @@ export const id: TranslationKeys = {
sides: "Sisi",
points: "Titik",
dashStyle: "Garis Putus",
solid: "Solid",
solid: "Utuh",
dashed: "Putus-putus",
dotted: "Titik-titik",
none: "Tidak ada",
@@ -2804,13 +2804,13 @@ export const id: TranslationKeys = {
usernamePlaceholder: "Nama pengguna",
passwordPlaceholder: "Kata sandi",
roleUserOption: "Pengguna",
roleEditorOption: "Editor",
roleEditorOption: "Penyunting",
roleAdminOption: "Admin",
roleUserDescription: "Akses alat dasar",
roleEditorDescription: "Semua file & pipeline",
roleAdminDescription: "Akses penuh",
noDescription: "Tidak ada deskripsi",
defaultTeamOption: "Default",
defaultTeamOption: "Bawaan",
createButton: "Buat",
cancelButton: "Batal",
createSuccess: "Pengguna berhasil dibuat",
@@ -2819,7 +2819,7 @@ export const id: TranslationKeys = {
deleteConfirm: 'Hapus pengguna "{username}"? Tindakan ini tidak dapat dibatalkan.',
deleteSuccess: 'Pengguna "{username}" dihapus',
deleteFailed: "Gagal menghapus pengguna",
editHeading: "Edit {username}",
editHeading: "Sunting {username}",
updateSuccess: "Pengguna diperbarui",
updateFailed: "Gagal memperbarui pengguna",
cannotRemoveOwnAdmin: "Tidak dapat menghapus peran admin Anda sendiri",
@@ -2926,7 +2926,7 @@ export const id: TranslationKeys = {
tableHeaderTime: "Waktu",
tableHeaderUser: "Pengguna",
tableHeaderAction: "Tindakan",
tableHeaderTarget: "Target",
tableHeaderTarget: "Sasaran",
paginationInfo: "Halaman {page} dari {totalPages} ({total} entri)",
previousButton: "Sebelumnya",
nextButton: "Berikutnya",
@@ -3393,7 +3393,7 @@ export const id: TranslationKeys = {
},
sidebar: {
tools: "Alat",
grid: "Grid",
grid: "Kisi",
automate: "Otomasi",
editor: "Editor",
files: "File",
+54 -54
View File
@@ -33,7 +33,7 @@ export const it: TranslationKeys = {
create: "Crea",
or: "o",
goHome: "Vai alla Home",
somethingWentWrong: "Qualcosa e andato storto",
somethingWentWrong: "Qualcosa è andato storto",
unexpectedError: "Si è verificato un errore imprevisto.",
retry: "Riprova",
privacyPolicy: "Informativa sulla privacy",
@@ -46,7 +46,7 @@ export const it: TranslationKeys = {
enhance: "Migliora e IA",
watermark: "Filigrana e sovrapposizione",
layout: "Layout e composizione",
utilities: "Utilita",
utilities: "Utilità",
optimization: "Ottimizzazione",
format: "Formato e conversione",
"video-edit": "Video",
@@ -122,7 +122,7 @@ export const it: TranslationKeys = {
"adjust-colors": {
name: "Regola colori",
description:
"Luminosita, contrasto, esposizione, saturazione, temperatura, nitidezza ed effetti",
"Luminosità, contrasto, esposizione, saturazione, temperatura, nitidezza ed effetti",
},
sharpening: {
name: "Nitidezza",
@@ -238,7 +238,7 @@ export const it: TranslationKeys = {
},
compose: {
name: "Composizione immagine",
description: "Sovrapponi immagini con posizione e opacita",
description: "Sovrapponi immagini con posizione e opacità",
},
"meme-generator": {
name: "Generatore di Meme",
@@ -736,7 +736,7 @@ export const it: TranslationKeys = {
},
toolSettings: {
compress: {
compressionMode: "Modalita di compressione",
compressionMode: "Modalità di compressione",
targetSize: "Dimensione obiettivo",
quality: "Qualità",
smallestFile: "File più piccolo",
@@ -755,7 +755,7 @@ export const it: TranslationKeys = {
contentAware: "Consapevole del contenuto",
widthPx: "Larghezza (px)",
heightPx: "Altezza (px)",
fitMode: "Modalita di adattamento",
fitMode: "Modalità di adattamento",
cropToFit: "Ritaglia per adattare",
fitInside: "Adatta all'interno",
stretch: "Allunga",
@@ -766,7 +766,7 @@ export const it: TranslationKeys = {
resizeToSquare: "Ridimensiona a quadrato",
protectFaces: "Proteggi volti",
smoothing: "Levigatura",
edgeSensitivity: "Sensibilita dei bordi",
edgeSensitivity: "Sensibilità dei bordi",
submit: "Ridimensiona",
submitBatch: "Ridimensiona ({count} file)",
progressLabel: "Ridimensionamento in corso",
@@ -935,7 +935,7 @@ export const it: TranslationKeys = {
dpiStandard: "Standard",
dpiPrint: "Stampa",
dpiHighQuality: "Alta qualità",
colorMode: "Modalita colore",
colorMode: "Modalità colore",
colorModeColor: "Colore",
colorModeGrayscale: "Scala di grigi",
colorModeBw: "B&N",
@@ -960,7 +960,7 @@ export const it: TranslationKeys = {
},
"adjust-colors": {
light: "Luce",
brightness: "Luminosita",
brightness: "Luminosità",
contrast: "Contrasto",
exposure: "Esposizione",
color: "Colore",
@@ -969,7 +969,7 @@ export const it: TranslationKeys = {
temperatureHint: "freddo / caldo",
tint: "Tinta",
tintHint: "verde / magenta",
hue: "Tonalita",
hue: "Tonalità",
detail: "Dettaglio",
sharpness: "Nitidezza",
effects: "Effetti",
@@ -993,9 +993,9 @@ export const it: TranslationKeys = {
unsharpMask: "Maschera di contrasto",
highPass: "Passa-alto",
presets: "Preset",
textureAmount: "Quantita texture",
amount: "Quantita",
strength: "Intensita",
textureAmount: "Quantità texture",
amount: "Quantità",
strength: "Intensità",
noiseReduction: "Riduzione rumore",
off: "disattivato",
lightDenoise: "leggero",
@@ -1054,9 +1054,9 @@ export const it: TranslationKeys = {
effectsSection: "Effetti",
effectsActive: "attivi",
blurBackground: "Sfoca sfondo",
intensity: "Intensita",
intensity: "Intensità",
addShadow: "Aggiungi ombra",
opacity: "Opacita",
opacity: "Opacità",
outputFormat: "Formato di output",
edgeSmoothing: "Antialiasing bordi",
edgeSmoothingOff: "Disattivato",
@@ -1114,7 +1114,7 @@ export const it: TranslationKeys = {
language: "Lingua",
autoDetect: "Rilevamento automatico",
pages: "Pagine",
pagesPlaceholder: "all, 1-3, 5",
pagesPlaceholder: "tutte, 1-3, 5",
pagesHint: "Inserisci numeri di pagina o intervalli (es. 1-3, 5, 8-10). Max 50 pagine.",
submit: "Estrai testo",
submitBatch: "Estrai testo ({count} file)",
@@ -1124,7 +1124,7 @@ export const it: TranslationKeys = {
blurRadius: "Raggio sfocatura",
blurLight: "Leggero",
blurHeavy: "Forte",
detectionSensitivity: "Sensibilita rilevamento",
detectionSensitivity: "Sensibilità rilevamento",
moreFaces: "Più volti",
fewerFaces: "Meno volti",
submit: "Sfoca volti",
@@ -1132,9 +1132,9 @@ export const it: TranslationKeys = {
},
"enhance-faces": {
quality: "Qualità",
enhancementStrength: "Intensita del miglioramento",
enhancementStrength: "Intensità del miglioramento",
onlyCenterFace: "Solo il volto centrale",
detectionSensitivity: "Sensibilita rilevamento",
detectionSensitivity: "Sensibilità rilevamento",
submit: "Migliora volti",
submitBatch: "Migliora volti ({count} file)",
progressLabel: "Miglioramento volti",
@@ -1175,20 +1175,20 @@ export const it: TranslationKeys = {
submitTrim: "Ritaglia bordi",
},
imageEnhancement: {
enhancementMode: "Modalita di miglioramento",
enhancementMode: "Modalità di miglioramento",
auto: "Automatico",
portrait: "Ritratto",
landscape: "Paesaggio",
lowLight: "Scarsa luminosita",
lowLight: "Scarsa luminosità",
food: "Cibo",
document: "Documento",
intensity: "Intensita",
intensity: "Intensità",
deepEnhance: "Miglioramento profondo (IA)",
deepEnhanceDescription: "Rimuove rumore e artefatti usando l'IA",
deepEnhanceRequires: "Richiede il pacchetto Ingrandimento e miglioramento",
analyzingImage: "Analisi immagine...",
detectedIssues: "Problemi rilevati",
imageLooksGood: "L'immagine sembra buona. Regola con il cursore di intensita.",
imageLooksGood: "L'immagine sembra buona. Regola con il cursore di intensità.",
issueUnderexposed: "Bassa esposizione",
issueOverexposed: "Sovraesposta",
issueLowContrast: "Contrasto piatto",
@@ -1213,7 +1213,7 @@ export const it: TranslationKeys = {
balancedDesc: "Buona qualità, velocità moderata",
qualityDesc: "Basato su IA, lento",
maximumDesc: "Miglior modello IA, il più lento",
strength: "Intensita",
strength: "Intensità",
subtle: "Sottile",
aggressive: "Aggressivo",
detailPreservation: "Preservazione dettagli",
@@ -1230,10 +1230,10 @@ export const it: TranslationKeys = {
progressLabelBatch: "Rimozione rumore da {count} immagini",
},
"red-eye-removal": {
sensitivity: "Sensibilita",
sensitivity: "Sensibilità",
strict: "Rigorosa",
aggressive: "Aggressiva",
correctionStrength: "Intensita correzione",
correctionStrength: "Intensità correzione",
subtle: "Sottile",
dark: "Scuro",
outputFormat: "Formato di output",
@@ -1248,15 +1248,15 @@ export const it: TranslationKeys = {
scratchRemovalDesc: "Rileva e ripara graffi, strappi e macchie",
faceEnhancement: "Miglioramento volti",
faceEnhancementDesc: "Restaura volti degradati con CodeFormer IA",
faceFidelity: "Fedelta del volto",
faceFidelity: "Fedeltà del volto",
enhanced: "Migliorato",
faithful: "Fedele",
noiseReduction: "Riduzione rumore",
noiseReductionDesc: "Rimuovi grana e rumore dalle vecchie foto",
denoiseStrength: "Intensita riduzione rumore",
denoiseStrength: "Intensità riduzione rumore",
autoColorize: "Colorizza automaticamente",
autoColorizeDesc: "Aggiungi colore alle foto B&N usando DDColor IA",
colorizeStrength: "Intensita colorizzazione",
colorizeStrength: "Intensità colorizzazione",
vivid: "Vivido",
submit: "Restaura foto",
submitBatch: "Restaura foto ({count})",
@@ -1271,7 +1271,7 @@ export const it: TranslationKeys = {
protectFacesHint:
"Rileva e protegge le aree del volto dalla rimozione delle cuciture tramite rilevamento facciale",
smoothing: "Levigatura",
edgeSensitivity: "Sensibilita dei bordi",
edgeSensitivity: "Sensibilità dei bordi",
submit: "Ridimensiona",
submitBatch: "Ridimensiona ({count} file)",
progressLabel: "Ridimensionamento intelligente",
@@ -1303,13 +1303,13 @@ export const it: TranslationKeys = {
balancedDesc: "Il migliore disponibile",
best: "Ottimo",
bestDesc: "La massima qualità",
colorIntensity: "Intensita colore",
colorIntensity: "Intensità colore",
grayscaleLabel: "Scala di grigi",
subtleLabel: "Sottile",
naturalLabel: "Naturale",
vividLabel: "Vivido",
intensityHint: "Valori più bassi producono colori più tenui, stile vintage.",
strength: "Intensita colorizzazione",
strength: "Intensità colorizzazione",
submit: "Colorizza",
submitBatch: "Colorizza ({count} file)",
progressLabel: "Colorizzazione in corso",
@@ -1340,7 +1340,7 @@ export const it: TranslationKeys = {
headLevel: "Testa dritta",
lookingStraight: "Sguardo dritto",
faceSize: "Dimensione del volto",
whatYouSee: "Quello che vedi e quello che scarichi",
whatYouSee: "Quello che vedi è quello che scarichi",
dragToAdjust: "Trascina per regolare",
scrollToZoom: "Scorri per ingrandire",
photoGenerated: "Foto generata. Scaricala dal pannello sinistro.",
@@ -1381,7 +1381,7 @@ export const it: TranslationKeys = {
progressLabel: "Sostituzione sfondo",
},
"blur-background": {
intensity: "Intensita sfocatura",
intensity: "Intensità sfocatura",
submit: "Sfoca sfondo",
submitBatch: "Sfoca sfondo ({count} file)",
progressLabel: "Sfocatura sfondo",
@@ -1390,7 +1390,7 @@ export const it: TranslationKeys = {
watermarkText: "Testo della filigrana",
fontSize: "Dimensione carattere",
color: "Colore",
opacity: "Opacita",
opacity: "Opacità",
position: "Posizione",
rotation: "Rotazione",
center: "Centro",
@@ -1406,7 +1406,7 @@ export const it: TranslationKeys = {
"watermark-image": {
uploadWatermark: "Carica immagine filigrana",
position: "Posizione",
opacity: "Opacita",
opacity: "Opacità",
scale: "Scala",
submit: "Applica filigrana",
submitBatch: "Applica filigrana ({count} file)",
@@ -1432,7 +1432,7 @@ export const it: TranslationKeys = {
uploadOverlay: "Carica immagine di sovrapposizione",
xPosition: "Posizione X",
yPosition: "Posizione Y",
opacity: "Opacita",
opacity: "Opacità",
blendMode: "Metodo di fusione",
submit: "Componi",
},
@@ -1460,7 +1460,7 @@ export const it: TranslationKeys = {
channels: "Canali",
colorSpace: "Spazio colore",
density: "Densità",
bitDepth: "Profondita di bit",
bitDepth: "Profondità di bit",
progressive: "Progressivo",
pages: "Pagine",
hasAlpha: "Canale alfa",
@@ -1471,7 +1471,7 @@ export const it: TranslationKeys = {
readInfo: "Leggi informazioni",
reading: "Lettura...",
channelStats: "Statistiche canali",
yes: "Si",
yes: "Sì",
no: "No",
na: "N/D",
failedToRead: "Impossibile leggere le informazioni",
@@ -1572,7 +1572,7 @@ export const it: TranslationKeys = {
vertical: "Verticale",
grid: "Griglia",
gridColumns: "Colonne griglia",
resizeMode: "Modalita ridimensionamento",
resizeMode: "Modalità ridimensionamento",
fit: "Adatta",
original: "Originale",
stretchMode: "Allunga",
@@ -1614,7 +1614,7 @@ export const it: TranslationKeys = {
shadowOffsetX: "Offset X ombra",
shadowOffsetY: "Offset Y ombra",
shadowColor: "Colore ombra",
shadowOpacity: "Opacita ombra",
shadowOpacity: "Opacità ombra",
submit: "Aggiungi bordo",
submitBatch: "Aggiungi bordo ({count} file)",
progressLabel: "Aggiunta bordo",
@@ -1716,14 +1716,14 @@ export const it: TranslationKeys = {
photo: "Foto",
sketch: "Bozzetto",
customPreset: "Personalizzato",
colorMode: "Modalita colore",
colorMode: "Modalità colore",
bw: "B&N",
colorModeColor: "Colore",
threshold: "Soglia",
colorPrecision: "Precisione colore",
layerDifference: "Differenza livelli",
filterSpeckle: "Filtra macchie",
pathMode: "Modalita tracciato",
pathMode: "Modalità tracciato",
cornerThreshold: "Soglia angolo",
invertColors: "Inverti colori",
submit: "Vettorializza",
@@ -1731,7 +1731,7 @@ export const it: TranslationKeys = {
progressLabel: "Vettorializzazione in corso",
},
"gif-tools": {
mode: "Modalita",
mode: "Modalità",
resize: "Ridimensiona",
optimize: "Ottimizza",
speed: "Velocità",
@@ -2448,7 +2448,7 @@ export const it: TranslationKeys = {
"I file {type} non possono essere visualizzati nel browser. Usa il pulsante di download per salvare il file.",
generatingPreview: "Generazione anteprima...",
cannotPreviewWillProcess:
"I file {ext} non possono essere visualizzati nel browser. Lo strumento elaborera comunque questo file normalmente.",
"I file {ext} non possono essere visualizzati nel browser. Lo strumento elaborerà comunque questo file normalmente.",
previousImage: "Immagine precedente",
nextImage: "Immagine successiva",
imageCounter: "{current} / {total}",
@@ -2564,8 +2564,8 @@ export const it: TranslationKeys = {
trim: "Ritaglia",
adjustments: {
label: "Regolazioni",
brightnessContrast: "Luminosita/Contrasto",
hueSaturation: "Tonalita/Saturazione",
brightnessContrast: "Luminosità/Contrasto",
hueSaturation: "Tonalità/Saturazione",
colorBalance: "Bilanciamento colore",
levels: "Livelli",
curves: "Curve",
@@ -2672,7 +2672,7 @@ export const it: TranslationKeys = {
dashed: "Tratteggiato",
dotted: "Puntinato",
none: "Nessuno",
opacity: "Opacita",
opacity: "Opacità",
rectangle: "Rettangolo",
ellipse: "Ellisse",
line: "Linea",
@@ -2729,7 +2729,7 @@ export const it: TranslationKeys = {
loginAttemptLimitDescription:
"Numero massimo di tentativi di accesso falliti al minuto prima del blocco",
fileManagementHeading: "Gestione file",
maxFileAgeLabel: "Eta massima file (ore)",
maxFileAgeLabel: "Età massima file (ore)",
maxFileAgeDescription:
"Per quanto tempo i file elaborati vengono conservati prima della pulizia automatica",
startupCleanupLabel: "Pulizia all'avvio",
@@ -2836,7 +2836,7 @@ export const it: TranslationKeys = {
newPasswordLabel: "Nuova password (min. 8 caratteri)",
resetPasswordButton: "Reimposta password",
resetPasswordWarning:
"Questa operazione invalidera tutte le sessioni e le chiavi API di questo utente.",
"Questa operazione invaliderà tutte le sessioni e le chiavi API di questo utente.",
resetSuccess: "Password reimpostata con successo",
resetFailed: "Reimpostazione della password non riuscita",
tableHeaderUser: "Utente",
@@ -3000,7 +3000,7 @@ export const it: TranslationKeys = {
heading: "Strumenti",
description:
"Attiva o disattiva i singoli strumenti. Gli strumenti disattivati sono nascosti a tutti gli utenti.",
restartBanner: "E necessario un riavvio per applicare le modifiche.",
restartBanner: "È necessario un riavvio per applicare le modifiche.",
searchPlaceholder: "Cerca strumenti...",
noSearchResults: "Nessuno strumento corrisponde alla ricerca.",
loadFailedError:
@@ -3014,7 +3014,7 @@ export const it: TranslationKeys = {
},
fileManagement: {
title: "Gestione file",
maxAge: "Eta massima file (ore)",
maxAge: "Età massima file (ore)",
maxAgeDescription:
"Per quanto tempo i file elaborati vengono conservati prima della pulizia automatica",
startupCleanup: "Pulizia all'avvio",
@@ -3092,7 +3092,7 @@ export const it: TranslationKeys = {
methodBoth: "Locale + OIDC",
oidcAuthFailed: "Autenticazione non riuscita. Riprova.",
oidcProviderUnreachable: "Impossibile raggiungere il provider di identità. Riprova più tardi.",
oidcSessionExpired: "La sessione di accesso e scaduta. Riprova.",
oidcSessionExpired: "La sessione di accesso è scaduta. Riprova.",
oidcUserNotAuthorized:
"Il tuo account non è autorizzato ad accedere a questa applicazione. Contatta l'amministratore.",
oidcUserLimitReached: "Limite utenti raggiunto. Contatta l'amministratore.",
@@ -3223,7 +3223,7 @@ export const it: TranslationKeys = {
addStep: "Aggiungi passaggio",
removeStep: "Rimuovi",
moveUp: "Sposta su",
moveDown: "Sposta giu",
moveDown: "Sposta giù",
savePipeline: "Salva Pipeline",
runPipeline: "Elabora",
pipelineName: "Nome del Pipeline",
+13 -13
View File
@@ -68,8 +68,8 @@ export const ja: TranslationKeys = {
},
modalities: {
image: "画像",
video: "Video",
audio: "Audio",
video: "動画",
audio: "オーディオ",
documentsAndFiles: "PDF & ファイル",
},
tools: {
@@ -1070,7 +1070,7 @@ export const ja: TranslationKeys = {
language: "言語",
autoDetect: "自動検出",
pages: "ページ",
pagesPlaceholder: "all, 1-3, 5",
pagesPlaceholder: "すべて, 1-3, 5",
pagesHint: "ページ番号または範囲を入力(例: 1-3, 5, 8-10)。最大50ページ。",
submit: "テキスト抽出",
submitBatch: "テキスト抽出({count}ファイル)",
@@ -1428,7 +1428,7 @@ export const ja: TranslationKeys = {
channelStats: "チャンネル統計",
yes: "はい",
no: "いいえ",
na: "N/A",
na: "該当なし",
failedToRead: "情報の読み取りに失敗しました",
},
compare: {
@@ -1496,9 +1496,9 @@ export const ja: TranslationKeys = {
errorFailed: "ページのキャプチャに失敗しました",
placeholder: "URL を入力して「キャプチャ」をクリック",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "デスクトップ",
tablet: "タブレット",
mobile: "モバイル",
custom: "カスタム",
},
},
@@ -1795,7 +1795,7 @@ export const ja: TranslationKeys = {
progressLabel: "GIF を作成中",
},
"resize-video": {
preset: "Preset",
preset: "プリセット",
width: "幅 (px)",
height: "高さ (px)",
hint: "アスペクト比を維持するには片方を空欄にしてください",
@@ -1833,7 +1833,7 @@ export const ja: TranslationKeys = {
brightness: "明るさ",
contrast: "コントラスト",
saturation: "彩度",
gamma: "Gamma",
gamma: "ガンマ",
submit: "適用",
submitBatch: "適用 ({count} ファイル)",
progressLabel: "色を調整中",
@@ -2089,7 +2089,7 @@ export const ja: TranslationKeys = {
strip: "すべてのメタデータを削除",
title: "タイトル",
artist: "アーティスト",
album: "Album",
album: "アルバム",
submit: "メタデータを適用",
submitBatch: "メタデータを適用 ({count}ファイル)",
progressLabel: "メタデータ適用中",
@@ -2192,7 +2192,7 @@ export const ja: TranslationKeys = {
progressLabel: "暗号化中",
},
"unlock-pdf": {
password: "Password",
password: "パスワード",
submit: "ロック解除",
submitBatch: "ロック解除 ({count}ファイル)",
progressLabel: "復号中",
@@ -2911,7 +2911,7 @@ export const ja: TranslationKeys = {
runsColumn: "実行回数",
userColumn: "ユーザー",
bytesInColumn: "入力バイト",
poolColumn: "Pool",
poolColumn: "プール",
p50Column: "p50",
p95Column: "p95",
storageHeading: "ライブラリストレージ",
@@ -3207,7 +3207,7 @@ export const ja: TranslationKeys = {
toolsUsed: "使用ツール",
none: "なし",
delete: "削除",
pipeline: "Pipeline",
pipeline: "パイプライン",
download: "ダウンロード",
},
dropzone: {
+12 -12
View File
@@ -68,8 +68,8 @@ export const ko: TranslationKeys = {
},
modalities: {
image: "이미지",
video: "Video",
audio: "Audio",
video: "동영상",
audio: "오디오",
documentsAndFiles: "PDF & 파일",
},
tools: {
@@ -562,7 +562,7 @@ export const ko: TranslationKeys = {
description: "균일한 여백으로 모든 페이지 크롭",
},
"nup-pdf": {
name: "N-up PDF",
name: "PDF 모아찍기",
description: "한 장에 여러 페이지 배치",
},
"booklet-pdf": {
@@ -1480,9 +1480,9 @@ export const ko: TranslationKeys = {
errorFailed: "페이지 캡처에 실패했습니다",
placeholder: "URL을 입력하고 캡처를 클릭하세요",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "데스크톱",
tablet: "태블릿",
mobile: "모바일",
custom: "사용자 지정",
},
},
@@ -1779,7 +1779,7 @@ export const ko: TranslationKeys = {
progressLabel: "GIF 생성 중",
},
"resize-video": {
preset: "Preset",
preset: "프리셋",
width: "너비 (px)",
height: "높이 (px)",
hint: "가로세로 비율을 유지하려면 한 값을 비워두세요",
@@ -1817,7 +1817,7 @@ export const ko: TranslationKeys = {
brightness: "밝기",
contrast: "대비",
saturation: "채도",
gamma: "Gamma",
gamma: "감마",
submit: "적용",
submitBatch: "적용 ({count}개 파일)",
progressLabel: "색상 조정 중",
@@ -2073,7 +2073,7 @@ export const ko: TranslationKeys = {
strip: "모든 메타데이터 제거",
title: "제목",
artist: "아티스트",
album: "Album",
album: "앨범",
submit: "메타데이터 적용",
submitBatch: "메타데이터 적용 ({count}개 파일)",
progressLabel: "메타데이터 적용 중",
@@ -2176,7 +2176,7 @@ export const ko: TranslationKeys = {
progressLabel: "암호화 중",
},
"unlock-pdf": {
password: "Password",
password: "비밀번호",
submit: "잠금 해제",
submitBatch: "잠금 해제 ({count}개 파일)",
progressLabel: "복호화 중",
@@ -2896,7 +2896,7 @@ export const ko: TranslationKeys = {
runsColumn: "실행 횟수",
userColumn: "사용자",
bytesInColumn: "입력 바이트",
poolColumn: "Pool",
poolColumn: "",
p50Column: "p50",
p95Column: "p95",
storageHeading: "라이브러리 저장소",
@@ -3190,7 +3190,7 @@ export const ko: TranslationKeys = {
toolsUsed: "사용한 도구",
none: "없음",
delete: "삭제",
pipeline: "Pipeline",
pipeline: "파이프라인",
download: "다운로드",
},
dropzone: {
+24 -24
View File
@@ -19,7 +19,7 @@ export const nl: TranslationKeys = {
back: "Terug",
next: "Volgende",
clear: "Wissen",
copy: "Kopieren",
copy: "Kopiëren",
copied: "Gekopieerd!",
noResults: "Geen resultaten gevonden",
showLess: "Minder tonen",
@@ -864,7 +864,7 @@ export const nl: TranslationKeys = {
hoursMinutes: "Uren:Minuten",
locationGps: "Locatie (GPS)",
locationDataFound: "Locatiedata gevonden",
noGpsData: "Geen GPS-data. Voeg hieronder coordinaten toe.",
noGpsData: "Geen GPS-data. Voeg hieronder coördinaten toe.",
latitude: "Breedtegraad",
longitude: "Lengtegraad",
altitudeMeters: "Hoogte (meters)",
@@ -1485,7 +1485,7 @@ export const nl: TranslationKeys = {
downloadDiff: "Verschil downloaden",
},
"find-duplicates": {
preset: "Preset",
preset: "Voorinstelling",
exact: "Exact",
similar: "Vergelijkbaar",
loose: "Ruim",
@@ -1500,7 +1500,7 @@ export const nl: TranslationKeys = {
submit: "Palet extraheren",
extracting: "Extraheren...",
dominantColors: "Dominante kleuren",
clickToCopy: "Klik om te kopieren",
clickToCopy: "Klik om te kopiëren",
},
"qr-generate": {
contentType: "Inhoudstype",
@@ -1545,7 +1545,7 @@ export const nl: TranslationKeys = {
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Mobiel",
custom: "Aangepast",
},
},
@@ -1622,7 +1622,7 @@ export const nl: TranslationKeys = {
progressLabel: "Rand toevoegen",
},
beautify: {
preset: "Preset",
preset: "Voorinstelling",
backgroundType: "Achtergrondtype",
solidColor: "Egale kleur",
linearGradient: "Lineair verloop",
@@ -1712,7 +1712,7 @@ export const nl: TranslationKeys = {
progressLabel: "SVG converteren",
},
vectorize: {
preset: "Preset",
preset: "Voorinstelling",
logo: "Logo",
illustration: "Illustratie",
photo: "Foto",
@@ -1770,10 +1770,10 @@ export const nl: TranslationKeys = {
maxHeight: "Max hoogte",
submit: "Converteren naar Base64",
submitBatch: "Converteren ({count} bestanden)",
copyBase64: "Base64 kopieren",
copyDataUri: "Data-URI kopieren",
copyImgTag: "<img>-tag kopieren",
copyCssUrl: "CSS url() kopieren",
copyBase64: "Base64 kopiëren",
copyDataUri: "Data-URI kopiëren",
copyImgTag: "<img>-tag kopiëren",
copyCssUrl: "CSS url() kopiëren",
},
"barcode-generate": {
text: "Tekst",
@@ -1842,7 +1842,7 @@ export const nl: TranslationKeys = {
progressLabel: "GIF maken",
},
"resize-video": {
preset: "Preset",
preset: "Voorinstelling",
width: "Breedte (px)",
height: "Hoogte (px)",
hint: "Laat een afmeting leeg om de beeldverhouding te behouden",
@@ -2239,7 +2239,7 @@ export const nl: TranslationKeys = {
progressLabel: "Versleutelen",
},
"unlock-pdf": {
password: "Password",
password: "Wachtwoord",
submit: "Ontgrendelen",
submitBatch: "Ontgrendelen ({count} bestanden)",
progressLabel: "Ontsleutelen",
@@ -2535,8 +2535,8 @@ export const nl: TranslationKeys = {
undo: "Ongedaan maken",
redo: "Opnieuw",
cut: "Knippen",
copy: "Kopieren",
copyMerged: "Samengevoegd kopieren",
copy: "Kopiëren",
copyMerged: "Samengevoegd kopiëren",
paste: "Plakken",
pasteInPlace: "Op dezelfde plek plakken",
delete: "Verwijderen",
@@ -2848,7 +2848,7 @@ export const nl: TranslationKeys = {
resetPasswordAction: "Wachtwoord resetten",
deleteUserAction: "Gebruiker verwijderen",
saveButton: "Opslaan",
copyPasswordButton: "Wachtwoord kopieren",
copyPasswordButton: "Wachtwoord kopiëren",
passwordCopied: "Gekopieerd!",
copyPasswordWarning:
"Kopieer dit wachtwoord nu. U kunt het niet meer zien na het aanmaken van de gebruiker.",
@@ -2962,7 +2962,7 @@ export const nl: TranslationKeys = {
toolColumn: "Tool",
runsColumn: "Uitvoeringen",
userColumn: "Gebruiker",
bytesInColumn: "Bytes in",
bytesInColumn: "Invoerbytes",
poolColumn: "Pool",
p50Column: "p50",
p95Column: "p95",
@@ -2983,7 +2983,7 @@ export const nl: TranslationKeys = {
restrictPermissionsLabel: "Rechten beperken (optioneel)",
expiresLabel: "Verloopt:",
clearButton: "Wissen",
copyTitle: "Kopieren",
copyTitle: "Kopiëren",
keyWarning: "Bewaar deze sleutel veilig. Hij wordt niet opnieuw getoond.",
existingKeysHeading: "Bestaande sleutels",
createdPrefix: "Aangemaakt {date}",
@@ -3020,7 +3020,7 @@ export const nl: TranslationKeys = {
title: "Gegevensbewaring",
fileMaxAgeHours: "Bewaartermijn verwerkingsbestanden (uren)",
fileMaxAgeHoursDesc:
"Hoe lang geuploade en verwerkte bestanden bewaard blijven. Standaard: 72 uur.",
"Hoe lang geüploade en verwerkte bestanden bewaard blijven. Standaard: 72 uur.",
jobsRetentionDays: "Bewaartermijn taakgegevens (dagen)",
jobsRetentionDaysDesc:
"Hoe lang taakmetadata bewaard blijft. 0 = voor altijd bewaren. Standaard: 30 dagen.",
@@ -3042,8 +3042,8 @@ export const nl: TranslationKeys = {
description: "Beheer AI-modelbundels voor geavanceerde bestandsverwerking.",
installAll: "Alles installeren",
diskUsage: "Schijfgebruik: {size}",
installed: "Geinstalleerd",
notInstalled: "Niet geinstalleerd",
installed: "Geïnstalleerd",
notInstalled: "Niet geïnstalleerd",
queued: "In wachtrij",
install: "Installeren",
repair: "Herstellen",
@@ -3051,10 +3051,10 @@ export const nl: TranslationKeys = {
installing: "Installeren...",
importBundle: "Bundel importeren",
importDescription:
"Upload een .tar.gz-bundelarchief geexporteerd vanuit een andere installatie.",
"Upload een .tar.gz-bundelarchief geëxporteerd vanuit een andere installatie.",
importButton: "Importeren uit bestand",
importing: "Importeren...",
importSuccess: "Bundel succesvol geimporteerd.",
importSuccess: "Bundel succesvol geïmporteerd.",
importError: "Bundel importeren mislukt: {error}",
},
about: {
@@ -3470,7 +3470,7 @@ export const nl: TranslationKeys = {
deleteKey: "Sleutel verwijderen",
editRole: "Rol bewerken",
deleteRole: "Rol verwijderen",
notInstalled: "Niet geinstalleerd",
notInstalled: "Niet geïnstalleerd",
queued: "In wachtrij voor installatie",
installing: "Installeren",
imageNOfTotal: "Afbeelding {n} van {total}",
+44 -44
View File
@@ -68,7 +68,7 @@ export const pl: TranslationKeys = {
},
modalities: {
image: "Obraz",
video: "Video",
video: "Wideo",
audio: "Audio",
documentsAndFiles: "PDF i pliki",
},
@@ -154,7 +154,7 @@ export const pl: TranslationKeys = {
},
"ocr-pdf": {
name: "PDF OCR",
description: "Wyodrebnianie tekstu z dokumentów PDF za pomoca OCR opartego na AI",
description: "Wyodrębnianie tekstu z dokumentów PDF za pomocą OCR opartego na AI",
},
"blur-faces": {
name: "Rozmywanie twarzy / danych",
@@ -206,23 +206,23 @@ export const pl: TranslationKeys = {
},
"transcribe-audio": {
name: "Transkrypcja audio",
description: "Zamien mowe na tekst za pomoca transkrypcji opartej na AI",
description: "Zamień mowę na tekst za pomocą transkrypcji opartej na AI",
},
"auto-subtitles": {
name: "Automatyczne napisy",
description: "Generuj pliki napisow ze sciezek dzwiekowych wideo",
description: "Generuj pliki napisów ze ścieżek dźwiękowych wideo",
},
"transparency-fixer": {
name: "Naprawa przezroczystości PNG",
description: "Naprawa fałszywej przezroczystości PNG jednym kliknięciem",
},
"background-replace": {
name: "Zamiana tla",
description: "Zamien tlo obrazu na jednolity kolor",
name: "Zamiana tła",
description: "Zamień tło obrazu na jednolity kolor",
},
"blur-background": {
name: "Rozmycie tla",
description: "Rozmyj tlo zachowujac ostrosc obiektu",
name: "Rozmycie tła",
description: "Rozmyj tło zachowując ostrość obiektu",
},
"watermark-text": {
name: "Tekstowy znak wodny",
@@ -934,7 +934,7 @@ export const pl: TranslationKeys = {
quality: "Jakość",
resolutionDpi: "Rozdzielczość (DPI)",
dpiScreen: "Ekran",
dpiStandard: "Standard",
dpiStandard: "Standardowa",
dpiPrint: "Druk",
dpiHighQuality: "Wysoka jakość",
colorMode: "Tryb koloru",
@@ -1112,14 +1112,14 @@ export const pl: TranslationKeys = {
progressLabel: "Wyodrębnianie tekstu",
},
"ocr-pdf": {
quality: "Jakosc",
language: "Jezyk",
quality: "Jakość",
language: "Język",
autoDetect: "Automatyczne wykrywanie",
pages: "Strony",
pagesPlaceholder: "wszystkie, 1-3, 5",
pagesHint: "Wprowadz numery stron lub zakresy (np. 1-3, 5, 8-10). Maks. 50 stron.",
submit: "Wyodrebnij tekst",
submitBatch: "Wyodrebnij tekst ({count} plików)",
pagesHint: "Wprowadź numery stron lub zakresy (np. 1-3, 5, 8-10). Maks. 50 stron.",
submit: "Wyodrębnij tekst",
submitBatch: "Wyodrębnij tekst ({count} plików)",
progressLabel: "Wyodrębnianie tekstu z PDF",
},
"blur-faces": {
@@ -1348,21 +1348,21 @@ export const pl: TranslationKeys = {
photoGenerated: "Zdjęcie wygenerowane. Pobierz z lewego panelu.",
},
"transcribe-audio": {
language: "Jezyk",
language: "Język",
autoDetect: "Automatyczne wykrywanie",
outputFormat: "Format wyjsciowy",
plainText: "Zwykly tekst",
outputFormat: "Format wyjściowy",
plainText: "Zwykły tekst",
submit: "Transkrybuj",
submitBatch: "Transkrybuj ({count} plikow)",
submitBatch: "Transkrybuj ({count} plików)",
progressLabel: "Transkrypcja audio",
},
"auto-subtitles": {
language: "Jezyk",
language: "Język",
autoDetect: "Automatyczne wykrywanie",
format: "Format napisow",
format: "Format napisów",
submit: "Generuj napisy",
submitBatch: "Generuj napisy ({count} plikow)",
progressLabel: "Generowanie napisow",
submitBatch: "Generuj napisy ({count} plików)",
progressLabel: "Generowanie napisów",
},
"transparency-fixer": {
description: "Prześlij PNG z fałszywą przezroczystością, a naprawimy to jednym kliknięciem.",
@@ -1377,16 +1377,16 @@ export const pl: TranslationKeys = {
progressLabel: "Naprawa przezroczystości",
},
"background-replace": {
color: "Kolor tla",
submit: "Zamien tlo",
submitBatch: "Zamien tlo ({count} plikow)",
progressLabel: "Zamiana tla",
color: "Kolor tła",
submit: "Zamień tło",
submitBatch: "Zamień tło ({count} plików)",
progressLabel: "Zamiana tła",
},
"blur-background": {
intensity: "Intensywnosc rozmycia",
submit: "Rozmyj tlo",
submitBatch: "Rozmyj tlo ({count} plikow)",
progressLabel: "Rozmywanie tla",
intensity: "Intensywność rozmycia",
submit: "Rozmyj tło",
submitBatch: "Rozmyj tło ({count} plików)",
progressLabel: "Rozmywanie tła",
},
"watermark-text": {
watermarkText: "Tekst znaku wodnego",
@@ -1508,7 +1508,7 @@ export const pl: TranslationKeys = {
text: "Tekst",
wifi: "WiFi",
vcard: "vCard",
email: "Email",
email: "E-mail",
phone: "Telefon",
sms: "SMS",
styling: "Stylizacja",
@@ -1543,9 +1543,9 @@ export const pl: TranslationKeys = {
errorFailed: "Nie udało się przechwycić strony",
placeholder: "Wpisz URL i kliknij Przechwyć",
presets: {
desktop: "Desktop",
desktop: "Komputer",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Telefon",
custom: "Własne",
},
},
@@ -1842,7 +1842,7 @@ export const pl: TranslationKeys = {
progressLabel: "Tworzenie GIF",
},
"resize-video": {
preset: "Preset",
preset: "Szablon",
width: "Szerokość (px)",
height: "Wysokość (px)",
hint: "Pozostaw jeden wymiar pusty, aby zachować proporcje",
@@ -2012,7 +2012,7 @@ export const pl: TranslationKeys = {
},
"convert-audio": {
format: "Format wyjściowy",
bitrate: "Bitrate (kbps)",
bitrate: "Przepływność (kbps)",
submit: "Konwertuj",
submitBatch: "Konwertuj ({count} plików)",
progressLabel: "Konwertowanie",
@@ -2239,7 +2239,7 @@ export const pl: TranslationKeys = {
progressLabel: "Szyfrowanie",
},
"unlock-pdf": {
password: "Password",
password: "Hasło",
submit: "Odblokuj",
submitBatch: "Odblokuj ({count} plików)",
progressLabel: "Odszyfrowywanie",
@@ -2478,9 +2478,9 @@ export const pl: TranslationKeys = {
saved: "Zapisano",
noChange: "bez zmian",
download: "Pobierz",
settingsSaved: "Twoje ustawienia zostaly zapisane.",
tryAgain: "Sprobuj ponownie",
tryDifferentFile: "Sprobuj inny plik",
settingsSaved: "Twoje ustawienia zostały zapisane.",
tryAgain: "Spróbuj ponownie",
tryDifferentFile: "Spróbuj inny plik",
batchPartialSuccess: "{success} z {total} przetworzono. {failed} nie powiodło się.",
dataResultsHint: "Wyniki widoczne powyżej. Użyj przycisku kopiowania w panelu wyników.",
downloadAsFile: "Pobierz jako plik",
@@ -2851,10 +2851,10 @@ export const pl: TranslationKeys = {
resetPasswordAction: "Resetuj hasło",
deleteUserAction: "Usuń użytkownika",
saveButton: "Zapisz",
copyPasswordButton: "Kopiuj haslo",
copyPasswordButton: "Kopiuj hasło",
passwordCopied: "Skopiowano!",
copyPasswordWarning:
"Skopiuj to haslo teraz. Nie bedziesz mogl go zobaczyc po utworzeniu uzytkownika.",
"Skopiuj to hasło teraz. Nie będziesz mógł go zobaczyć po utworzeniu użytkownika.",
},
teams: {
heading: "Zespoły",
@@ -2967,7 +2967,7 @@ export const pl: TranslationKeys = {
runsColumn: "Uruchomienia",
userColumn: "Użytkownik",
bytesInColumn: "Bajty wejściowe",
poolColumn: "Pool",
poolColumn: "Pula",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Przestrzeń biblioteki",
@@ -3288,8 +3288,8 @@ export const pl: TranslationKeys = {
addUrlButton: "Dodaj",
importMultipleUrls: "Importuj wiele adresów URL...",
filesSelected: "Wybrano plików: {count}",
dropToAdd: "Upusc, aby dodac pliki",
dropToReplace: "Upusc, aby zastapic plik",
dropToAdd: "Upuść, aby dodać pliki",
dropToReplace: "Upuść, aby zastąpić plik",
},
reviewPanel: {
processedResultAlt: "Wynik przetwarzania",
+12 -12
View File
@@ -68,8 +68,8 @@ export const ptBR: TranslationKeys = {
},
modalities: {
image: "Imagem",
video: "Video",
audio: "Audio",
video: "Vídeo",
audio: "Áudio",
documentsAndFiles: "PDF & Arquivos",
},
tools: {
@@ -1041,7 +1041,7 @@ export const ptBR: TranslationKeys = {
quality: "Qualidade",
fast: "Rápido",
hd: "HD",
max: "Max",
max: "Máx",
ultra: "Ultra",
background: "Fundo",
transparent: "Transparente",
@@ -1482,7 +1482,7 @@ export const ptBR: TranslationKeys = {
downloadDiff: "Baixar diferença",
},
"find-duplicates": {
preset: "Preset",
preset: "Predefinição",
exact: "Exato",
similar: "Similar",
loose: "Amplo",
@@ -1505,7 +1505,7 @@ export const ptBR: TranslationKeys = {
text: "Texto",
wifi: "WiFi",
vcard: "vCard",
email: "Email",
email: "E-mail",
phone: "Telefone",
sms: "SMS",
styling: "Estilo",
@@ -1542,7 +1542,7 @@ export const ptBR: TranslationKeys = {
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Celular",
custom: "Personalizado",
},
},
@@ -1619,7 +1619,7 @@ export const ptBR: TranslationKeys = {
progressLabel: "Adicionando borda",
},
beautify: {
preset: "Preset",
preset: "Predefinição",
backgroundType: "Tipo de fundo",
solidColor: "Cor sólida",
linearGradient: "Degradado linear",
@@ -1709,7 +1709,7 @@ export const ptBR: TranslationKeys = {
progressLabel: "Convertendo SVG",
},
vectorize: {
preset: "Preset",
preset: "Predefinição",
logo: "Logo",
illustration: "Ilustração",
photo: "Foto",
@@ -1839,7 +1839,7 @@ export const ptBR: TranslationKeys = {
progressLabel: "Criando GIF",
},
"resize-video": {
preset: "Preset",
preset: "Predefinição",
width: "Largura (px)",
height: "Altura (px)",
hint: "Deixe uma dimensão vazia para manter a proporção",
@@ -1877,7 +1877,7 @@ export const ptBR: TranslationKeys = {
brightness: "Brilho",
contrast: "Contraste",
saturation: "Saturação",
gamma: "Gamma",
gamma: "Gama",
submit: "Aplicar",
submitBatch: "Aplicar ({count} arquivos)",
progressLabel: "Ajustando cor",
@@ -2133,7 +2133,7 @@ export const ptBR: TranslationKeys = {
strip: "Remover todos os metadados",
title: "Título",
artist: "Artista",
album: "Album",
album: "Álbum",
submit: "Aplicar Metadados",
submitBatch: "Aplicar Metadados ({count} arquivos)",
progressLabel: "Aplicando metadados",
@@ -2236,7 +2236,7 @@ export const ptBR: TranslationKeys = {
progressLabel: "Criptografando",
},
"unlock-pdf": {
password: "Password",
password: "Senha",
submit: "Desbloquear",
submitBatch: "Desbloquear ({count} arquivos)",
progressLabel: "Descriptografando",
+12 -12
View File
@@ -68,8 +68,8 @@ export const ru: TranslationKeys = {
},
modalities: {
image: "Изображение",
video: "Video",
audio: "Audio",
video: "Видео",
audio: "Аудио",
documentsAndFiles: "PDF и файлы",
},
tools: {
@@ -1503,7 +1503,7 @@ export const ru: TranslationKeys = {
text: "Текст",
wifi: "WiFi",
vcard: "vCard",
email: "Email",
email: "Эл. почта",
phone: "Телефон",
sms: "SMS",
styling: "Стилизация",
@@ -1538,9 +1538,9 @@ export const ru: TranslationKeys = {
errorFailed: "Не удалось захватить страницу",
placeholder: 'Введите URL и нажмите "Захватить"',
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "Компьютер",
tablet: "Планшет",
mobile: "Мобильный",
custom: "Пользовательский",
},
},
@@ -1837,7 +1837,7 @@ export const ru: TranslationKeys = {
progressLabel: "Создание GIF",
},
"resize-video": {
preset: "Preset",
preset: "Шаблон",
width: "Ширина (px)",
height: "Высота (px)",
hint: "Оставьте одно измерение пустым для сохранения пропорций",
@@ -1875,7 +1875,7 @@ export const ru: TranslationKeys = {
brightness: "Яркость",
contrast: "Контрастность",
saturation: "Насыщенность",
gamma: "Gamma",
gamma: "Гамма",
submit: "Применить",
submitBatch: "Применить ({count} файлов)",
progressLabel: "Настройка цвета",
@@ -2131,7 +2131,7 @@ export const ru: TranslationKeys = {
strip: "Удалить все метаданные",
title: "Название",
artist: "Исполнитель",
album: "Album",
album: "Альбом",
submit: "Применить метаданные",
submitBatch: "Применить метаданные ({count} файлов)",
progressLabel: "Применение метаданных",
@@ -2234,7 +2234,7 @@ export const ru: TranslationKeys = {
progressLabel: "Шифрование",
},
"unlock-pdf": {
password: "Password",
password: "Пароль",
submit: "Разблокировать",
submitBatch: "Разблокировать ({count} файлов)",
progressLabel: "Дешифрование",
@@ -2957,7 +2957,7 @@ export const ru: TranslationKeys = {
runsColumn: "Запуски",
userColumn: "Пользователь",
bytesInColumn: "Байт на входе",
poolColumn: "Pool",
poolColumn: "Пул",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Хранилище библиотеки",
@@ -3259,7 +3259,7 @@ export const ru: TranslationKeys = {
toolsUsed: "Использованные инструменты",
none: "Нет",
delete: "Удалить",
pipeline: "Pipeline",
pipeline: "Конвейер",
download: "Скачать",
},
dropzone: {
+13 -13
View File
@@ -878,7 +878,7 @@ export const sv: TranslationKeys = {
gpsCleared: "GPS rensat",
gpsAdded: "GPS tillagt",
datesShifted: "datum flyttade",
submit: "Tilllämpa metadata",
submit: "Tillämpa metadata",
progressLabel: "Skriver metadata",
},
"bulk-rename": {
@@ -978,8 +978,8 @@ export const sv: TranslationKeys = {
green: "Grön",
blue: "Blå",
resetAll: "Återställ allt",
submit: "Tilllämpa",
submitBatch: "Tilllämpa ({count} filer)",
submit: "Tillämpa",
submitBatch: "Tillämpa ({count} filer)",
progressLabel: "Justerar färger",
},
sharpening: {
@@ -1536,9 +1536,9 @@ export const sv: TranslationKeys = {
errorFailed: "Kunde inte fånga sidan",
placeholder: "Ange en URL och klicka på Fånga",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "Skrivbord",
tablet: "Surfplatta",
mobile: "Mobil",
custom: "Anpassad",
},
},
@@ -1605,7 +1605,7 @@ export const sv: TranslationKeys = {
paddingColor: "Utfyllnadsfärg",
cornerRadius: "Hornradie",
shadow: "Skugga",
shadowBlur: "Skuggostarpa",
shadowBlur: "Skugg-osrpa",
shadowOffsetX: "Skuggoffset X",
shadowOffsetY: "Skuggoffset Y",
shadowColor: "Skuggfärg",
@@ -1835,7 +1835,7 @@ export const sv: TranslationKeys = {
progressLabel: "Skapar GIF",
},
"resize-video": {
preset: "Preset",
preset: "Förinställning",
width: "Bredd (px)",
height: "Höjd (px)",
hint: "Lämna en dimension tom för att behålla bildförhållandet",
@@ -2232,7 +2232,7 @@ export const sv: TranslationKeys = {
progressLabel: "Krypterar",
},
"unlock-pdf": {
password: "Password",
password: "Lösenord",
submit: "Lås upp",
submitBatch: "Lås upp ({count} filer)",
progressLabel: "Dekrypterar",
@@ -2677,7 +2677,7 @@ export const sv: TranslationKeys = {
settings: {
heading: "Inställningar",
nav: {
general: "Allmäntt",
general: "Allmänt",
systemSettings: "Systeminställningar",
security: "Säkerhet",
people: "Personer",
@@ -2692,7 +2692,7 @@ export const sv: TranslationKeys = {
about: "Om",
},
general: {
heading: "Allmäntt",
heading: "Allmänt",
description: "Användarinställningar och visningsinställningar.",
loading: "Laddar...",
logOut: "Logga ut",
@@ -2826,7 +2826,7 @@ export const sv: TranslationKeys = {
resetPasswordButton: "Återställ lösenord",
resetPasswordWarning:
"Detta ogiltigförklarar alla sessioner och API-nycklar för denna användare.",
resetSuccess: "Lösenord återställtt",
resetSuccess: "Lösenord återställt",
resetFailed: "Kunde inte återställa lösenord",
tableHeaderUser: "Användare",
tableHeaderRole: "Roll",
@@ -2952,7 +2952,7 @@ export const sv: TranslationKeys = {
toolColumn: "Verktyg",
runsColumn: "Körningar",
userColumn: "Användare",
bytesInColumn: "Bytes in",
bytesInColumn: "Indata",
poolColumn: "Pool",
p50Column: "p50",
p95Column: "p95",
+11 -11
View File
@@ -68,8 +68,8 @@ export const th: TranslationKeys = {
},
modalities: {
image: "รูปภาพ",
video: "Video",
audio: "Audio",
video: "วิดีโอ",
audio: "เสียง",
documentsAndFiles: "PDF และไฟล์",
},
tools: {
@@ -319,7 +319,7 @@ export const th: TranslationKeys = {
description: "สร้างแผนภูมิฮิสโตแกรม RGB จากรูปภาพ",
},
"lqip-placeholder": {
name: "LQIP Placeholder",
name: "ตัวยึดตำแหน่ง LQIP",
description: "สร้างรูปภาพตัวแทนขนาดเล็กคุณภาพต่ำพร้อม base64 data URI",
},
"sprite-sheet": {
@@ -1513,9 +1513,9 @@ export const th: TranslationKeys = {
errorFailed: "จับภาพหน้าเว็บไม่สำเร็จ",
placeholder: "ใส่ URL แล้วคลิกจับภาพ",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "เดสก์ท็อป",
tablet: "แท็บเล็ต",
mobile: "มือถือ",
custom: "กำหนดเอง",
},
},
@@ -1812,7 +1812,7 @@ export const th: TranslationKeys = {
progressLabel: "กำลังสร้าง GIF",
},
"resize-video": {
preset: "Preset",
preset: "พรีเซ็ต",
width: "ความกว้าง (px)",
height: "ความสูง (px)",
hint: "เว้นมิติหนึ่งว่างเพื่อรักษาอัตราส่วน",
@@ -1850,7 +1850,7 @@ export const th: TranslationKeys = {
brightness: "ความสว่าง",
contrast: "คอนทราสต์",
saturation: "ความอิ่มตัว",
gamma: "Gamma",
gamma: "แกมมา",
submit: "ใช้",
submitBatch: "ใช้ ({count} ไฟล์)",
progressLabel: "กำลังปรับสี",
@@ -2106,7 +2106,7 @@ export const th: TranslationKeys = {
strip: "ลบข้อมูลเมตาทั้งหมด",
title: "ชื่อเรื่อง",
artist: "ศิลปิน",
album: "Album",
album: "อัลบั้ม",
submit: "ใช้ข้อมูลเมตา",
submitBatch: "ใช้ข้อมูลเมตา ({count} ไฟล์)",
progressLabel: "กำลังใช้ข้อมูลเมตา",
@@ -2209,7 +2209,7 @@ export const th: TranslationKeys = {
progressLabel: "กำลังเข้ารหัส",
},
"unlock-pdf": {
password: "Password",
password: "รหัสผ่าน",
submit: "ปลดล็อก",
submitBatch: "ปลดล็อก ({count} ไฟล์)",
progressLabel: "กำลังถอดรหัส",
@@ -2925,7 +2925,7 @@ export const th: TranslationKeys = {
runsColumn: "ครั้ง",
userColumn: "ผู้ใช้",
bytesInColumn: "ไบต์เข้า",
poolColumn: "Pool",
poolColumn: "พูล",
p50Column: "p50",
p95Column: "p95",
storageHeading: "พื้นที่จัดเก็บไลบรารี",
+47 -47
View File
@@ -69,7 +69,7 @@ export const tr: TranslationKeys = {
modalities: {
image: "Görsel",
video: "Video",
audio: "Audio",
audio: "Ses",
documentsAndFiles: "PDF ve Dosyalar",
},
tools: {
@@ -156,7 +156,7 @@ export const tr: TranslationKeys = {
},
"ocr-pdf": {
name: "PDF OCR",
description: "AI destekli OCR ile PDF belgelerinden metin cikarma",
description: "AI destekli OCR ile PDF belgelerinden metin çıkarma",
},
"blur-faces": {
name: "Yüz / Kişisel Bilgi Bulanıklaştırma",
@@ -207,23 +207,23 @@ export const tr: TranslationKeys = {
},
"transcribe-audio": {
name: "Ses Transkripsiyonu",
description: "Yapay zeka destekli transkripsiyon ile konusmayi metne donusturun",
description: "Yapay zeka destekli transkripsiyon ile konuşmayı metne dönüştürün",
},
"auto-subtitles": {
name: "Otomatik Altyazi",
description: "Video ses izlerinden altyazi dosyalari olusturun",
name: "Otomatik Altyazı",
description: "Video ses izlerinden altyazı dosyaları oluşturun",
},
"transparency-fixer": {
name: "PNG Saydamlık Düzeltici",
description: "Sahte saydam PNG dosyalarını tek tıkla düzeltin",
},
"background-replace": {
name: "Arka Plan Degistirme",
description: "Gorsel arka planini duz renkle degistirin",
name: "Arka Plan Değiştirme",
description: "Görsel arka planını düz renkle değiştirin",
},
"blur-background": {
name: "Arka Plan Bulama",
description: "Konuyu net tutarak arka plani bulaniklastirin",
name: "Arka Plan Bulanıklaştırma",
description: "Konuyu net tutarak arka planı bulanıklaştırın",
},
"watermark-text": {
name: "Metin Filigranı",
@@ -1113,13 +1113,13 @@ export const tr: TranslationKeys = {
"ocr-pdf": {
quality: "Kalite",
language: "Dil",
autoDetect: "Otomatik algilama",
autoDetect: "Otomatik algılama",
pages: "Sayfalar",
pagesPlaceholder: "tümü, 1-3, 5",
pagesHint: "Sayfa numaralari veya araliklar girin (orn. 1-3, 5, 8-10). Maks. 50 sayfa.",
submit: "Metni cikar",
submitBatch: "Metni cikar ({count} dosya)",
progressLabel: "PDF'den metin cikariliyor",
pagesHint: "Sayfa numaraları veya aralıklar girin (örn. 1-3, 5, 8-10). Maks. 50 sayfa.",
submit: "Metni çıkar",
submitBatch: "Metni çıkar ({count} dosya)",
progressLabel: "PDF'den metin çıkarılıyor",
},
"blur-faces": {
blurRadius: "Bulanıklaştırma Yarıçapı",
@@ -1347,20 +1347,20 @@ export const tr: TranslationKeys = {
},
"transcribe-audio": {
language: "Dil",
autoDetect: "Otomatik algilama",
outputFormat: "Cikti Formati",
plainText: "Duz Metin",
autoDetect: "Otomatik algılama",
outputFormat: "Çıktı Formatı",
plainText: "Düz Metin",
submit: "Transkribe Et",
submitBatch: "Transkribe Et ({count} dosya)",
progressLabel: "Ses transkripsiyonu yapiliyor",
progressLabel: "Ses transkripsiyonu yapılıyor",
},
"auto-subtitles": {
language: "Dil",
autoDetect: "Otomatik algilama",
format: "Altyazi Formati",
submit: "Altyazi Olustur",
submitBatch: "Altyazi Olustur ({count} dosya)",
progressLabel: "Altyazi olusturuluyor",
autoDetect: "Otomatik algılama",
format: "Altyazı Formatı",
submit: "Altyazı Oluştur",
submitBatch: "Altyazı Oluştur ({count} dosya)",
progressLabel: "Altyazı oluşturuluyor",
},
"transparency-fixer": {
description: "Sahte saydam arka planlı bir PNG yükleyin, tek tıkla düzeltelim.",
@@ -1376,15 +1376,15 @@ export const tr: TranslationKeys = {
},
"background-replace": {
color: "Arka plan rengi",
submit: "Arka plani degistir",
submitBatch: "Arka plani degistir ({count} dosya)",
progressLabel: "Arka plan degistiriliyor",
submit: "Arka planı değiştir",
submitBatch: "Arka planı değiştir ({count} dosya)",
progressLabel: "Arka plan değiştiriliyor",
},
"blur-background": {
intensity: "Bulama yogunlugu",
submit: "Arka plani bulaniklastir",
submitBatch: "Arka plani bulaniklastir ({count} dosya)",
progressLabel: "Arka plan bulaniklastiriliyor",
intensity: "Bulanıklık yoğunluğu",
submit: "Arka planı bulanıklaştır",
submitBatch: "Arka planı bulanıklaştır ({count} dosya)",
progressLabel: "Arka plan bulanıklaştırılıyor",
},
"watermark-text": {
watermarkText: "Filigran Metni",
@@ -1542,9 +1542,9 @@ export const tr: TranslationKeys = {
errorFailed: "Sayfa yakalanamadı",
placeholder: "Bir URL girin ve Yakala'ya tıklayın",
presets: {
desktop: "Desktop",
desktop: "Masaüstü",
tablet: "Tablet",
mobile: "Mobile",
mobile: "Mobil",
custom: "Özel",
},
},
@@ -1841,7 +1841,7 @@ export const tr: TranslationKeys = {
progressLabel: "GIF oluşturuluyor",
},
"resize-video": {
preset: "Preset",
preset: "Ön Ayar",
width: "Genişlik (px)",
height: "Yükseklik (px)",
hint: "En boy oranını korumak için bir boyutu boş bırakın",
@@ -2135,7 +2135,7 @@ export const tr: TranslationKeys = {
strip: "Tüm meta verileri kaldır",
title: "Başlık",
artist: "Sanatçı",
album: "Album",
album: "Albüm",
submit: "Meta Verileri Uygula",
submitBatch: "Meta Verileri Uygula ({count} dosya)",
progressLabel: "Meta veriler uygulanıyor",
@@ -2238,7 +2238,7 @@ export const tr: TranslationKeys = {
progressLabel: "Şifreleniyor",
},
"unlock-pdf": {
password: "Password",
password: "Parola",
submit: "Kilidini Aç",
submitBatch: "Kilidini Aç ({count} dosya)",
progressLabel: "Şifre çözülüyor",
@@ -2477,9 +2477,9 @@ export const tr: TranslationKeys = {
saved: "Kaydedildi",
noChange: "değişiklik yok",
download: "İndir",
settingsSaved: "Ayarlariniz kaydedildi.",
settingsSaved: "Ayarlarınız kaydedildi.",
tryAgain: "Tekrar dene",
tryDifferentFile: "Farkli bir dosya dene",
tryDifferentFile: "Farklı bir dosya dene",
batchPartialSuccess: "{total} dosyadan {success} tanesi işlendi. {failed} başarısız.",
dataResultsHint: "Sonuçlar yukarıda gösterildi. Sonuç panelindeki kopyala düğmesini kullanın.",
downloadAsFile: "Dosya olarak indir",
@@ -2619,8 +2619,8 @@ export const tr: TranslationKeys = {
stylize: {
label: "Stilize Et",
emboss: "Kabartma",
solarize: "Solarize",
posterize: "Posterize",
solarize: "Solarize Et",
posterize: "Posterize Et",
},
grayscale: "Gri Tonlama",
sepia: "Sepya",
@@ -2848,10 +2848,10 @@ export const tr: TranslationKeys = {
resetPasswordAction: "Parolayı Sıfırla",
deleteUserAction: "Kullanıcıyı Sil",
saveButton: "Kaydet",
copyPasswordButton: "Sifreyi kopyala",
passwordCopied: "Kopyalandi!",
copyPasswordButton: "Şifreyi kopyala",
passwordCopied: "Kopyalandı!",
copyPasswordWarning:
"Bu sifreyi simdi kopyalayin. Kullaniciyi olusturduktan sonra goeremezsiniz.",
"Bu şifreyi şimdi kopyalayın. Kullanıcıyı oluşturduktan sonra göremezsiniz.",
},
teams: {
heading: "Takımlar",
@@ -2963,7 +2963,7 @@ export const tr: TranslationKeys = {
runsColumn: "Çalışma",
userColumn: "Kullanıcı",
bytesInColumn: "Gelen bayt",
poolColumn: "Pool",
poolColumn: "Havuz",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Kütüphane depolama",
@@ -3258,7 +3258,7 @@ export const tr: TranslationKeys = {
dropFilesHere: "Dosyaları buraya bırakın",
orClickToSelect: "veya dosya seçmek için tıklayın",
name: "Ad",
format: "Format",
format: "Biçim",
size: "Boyut",
dimensions: "Boyutlar",
version: "Sürüm",
@@ -3282,8 +3282,8 @@ export const tr: TranslationKeys = {
addUrlButton: "Ekle",
importMultipleUrls: "Birden fazla URL içe aktar...",
filesSelected: "{count} dosya seçildi",
dropToAdd: "Dosya eklemek icin birakin",
dropToReplace: "Dosyayi degistirmek icin birakin",
dropToAdd: "Dosya eklemek için bırakın",
dropToReplace: "Dosyayı değiştirmek için bırakın",
},
reviewPanel: {
processedResultAlt: "İşlenmiş sonuç",
@@ -3364,7 +3364,7 @@ export const tr: TranslationKeys = {
goToWatermarkText: "Metin Filigranına git",
goToStripMetadata: "Meta Veri Kaldırmaya git",
goToImageInfo: "Görüntü Bilgisine git",
processFile: "Dosyayi isle",
processFile: "Dosyayı işle",
downloadResult: "Sonucu indir",
},
resources: {
+12 -12
View File
@@ -68,8 +68,8 @@ export const uk: TranslationKeys = {
},
modalities: {
image: "Зображення",
video: "Video",
audio: "Audio",
video: "Відео",
audio: "Аудіо",
documentsAndFiles: "PDF та файли",
},
tools: {
@@ -1506,7 +1506,7 @@ export const uk: TranslationKeys = {
text: "Текст",
wifi: "WiFi",
vcard: "vCard",
email: "Email",
email: "Ел. пошта",
phone: "Телефон",
sms: "SMS",
styling: "Стилізація",
@@ -1541,9 +1541,9 @@ export const uk: TranslationKeys = {
errorFailed: "Не вдалося захопити сторінку",
placeholder: "Введіть URL і натисніть Захопити",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "Комп'ютер",
tablet: "Планшет",
mobile: "Мобільний",
custom: "Довільний",
},
},
@@ -1840,7 +1840,7 @@ export const uk: TranslationKeys = {
progressLabel: "Створення GIF",
},
"resize-video": {
preset: "Preset",
preset: "Шаблон",
width: "Ширина (px)",
height: "Висота (px)",
hint: "Залиште одне поле порожнім, щоб зберегти пропорції",
@@ -1878,7 +1878,7 @@ export const uk: TranslationKeys = {
brightness: "Яскравість",
contrast: "Контраст",
saturation: "Насиченість",
gamma: "Gamma",
gamma: "Гамма",
submit: "Застосувати",
submitBatch: "Застосувати ({count} файлів)",
progressLabel: "Налаштування кольору",
@@ -2134,7 +2134,7 @@ export const uk: TranslationKeys = {
strip: "Видалити всі метадані",
title: "Назва",
artist: "Виконавець",
album: "Album",
album: "Альбом",
submit: "Застосувати метадані",
submitBatch: "Застосувати метадані ({count} файлів)",
progressLabel: "Застосування метаданих",
@@ -2237,7 +2237,7 @@ export const uk: TranslationKeys = {
progressLabel: "Шифрування",
},
"unlock-pdf": {
password: "Password",
password: "Пароль",
submit: "Розблокувати",
submitBatch: "Розблокувати ({count} файлів)",
progressLabel: "Дешифрування",
@@ -2960,7 +2960,7 @@ export const uk: TranslationKeys = {
runsColumn: "Запуски",
userColumn: "Користувач",
bytesInColumn: "Вхідні байти",
poolColumn: "Pool",
poolColumn: "Пул",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Сховище бібліотеки",
@@ -3261,7 +3261,7 @@ export const uk: TranslationKeys = {
toolsUsed: "Використані інструменти",
none: "Немає",
delete: "Видалити",
pipeline: "Pipeline",
pipeline: "Конвеєр",
download: "Завантажити",
},
dropzone: {
+60 -60
View File
@@ -157,7 +157,7 @@ export const vi: TranslationKeys = {
},
"ocr-pdf": {
name: "OCR PDF",
description: "Trich xuat van ban tu tai lieu PDF bang OCR ho tro boi AI",
description: "Trích xut văn bn t tài liu PDF bng OCR h tr bi AI",
},
"blur-faces": {
name: "Làm mờ khuôn mặt / Thông tin nhạy cảm",
@@ -206,24 +206,24 @@ export const vi: TranslationKeys = {
"Tạo ảnh hộ chiếu, thị thực và giấy tờ tùy thân đạt chuẩn với phát hiện khuôn mặt tự động",
},
"transcribe-audio": {
name: "Phien am thanh",
description: "Chuyen doi giong noi thanh van ban voi phien am bang AI",
name: "Phiên âm thanh",
description: "Chuyn đổi ging nói thành văn bn vi phiên âm bng AI",
},
"auto-subtitles": {
name: "Phu De Tu Dong",
description: "Tao tep phu de tu ban am thanh video",
name: "Phụ đề tự động",
description: "To tp phụ đề t bn âm thanh video",
},
"transparency-fixer": {
name: "Sửa trong suốt PNG",
description: "Sửa ảnh PNG giả trong suốt chỉ với một cú nhấp",
},
"background-replace": {
name: "Thay doi nen",
description: "Thay the nen hinh anh bang mau don sac",
name: "Thay đổi nn",
description: "Thay thế nn hình nh bng màu đơn sc",
},
"blur-background": {
name: "Lam mo nen",
description: "Lam mo nen trong khi giu cho chu the sac net",
name: "Làm m nn",
description: "Làm m nn trong khi gi cho ch th sc nét",
},
"watermark-text": {
name: "Hình mờ văn bản",
@@ -301,7 +301,7 @@ export const vi: TranslationKeys = {
description: "Cắt hình ảnh thành hình tròn ở giữa với các góc trong suốt",
},
duotone: {
name: "Duotone",
name: "Hai tông màu",
description: "Áp dụng hiệu ứng hai tông màu với màu bóng và màu sáng tùy chỉnh",
},
"image-pad": {
@@ -309,11 +309,11 @@ export const vi: TranslationKeys = {
description: "Thêm viền cho ảnh theo tỷ lệ khung hình mục tiêu với nền màu đơn sắc",
},
pixelate: {
name: "Pixelate",
name: "Khảm điểm ảnh",
description: "Áp dụng hiệu ứng pixelate cho toàn bộ ảnh hoặc một vùng cụ thể",
},
vignette: {
name: "Vignette",
name: "Viền tối",
description: "Thêm hiệu ứng vignette với cường độ và màu sắc có thể điều chỉnh",
},
"gif-webp": {
@@ -329,7 +329,7 @@ export const vi: TranslationKeys = {
description: "Tạo ảnh giữ chỗ chất lượng thấp nhỏ gọn với URI dữ liệu base64",
},
"sprite-sheet": {
name: "Sprite Sheet",
name: "Bảng Sprite",
description: "Ghép nhiều hình ảnh thành một lưới sprite sheet",
},
"svg-to-raster": {
@@ -614,7 +614,7 @@ export const vi: TranslationKeys = {
description: "Cắt tất cả các trang với lề đồng nhất",
},
"nup-pdf": {
name: "N-up PDF",
name: "Ghép trang PDF",
description: "Xếp nhiều trang trên một tờ",
},
"booklet-pdf": {
@@ -622,7 +622,7 @@ export const vi: TranslationKeys = {
description: "Sắp xếp trang để gấp thành sách nhỏ",
},
"watermark-pdf": {
name: "Watermark PDF",
name: "Hình mờ PDF",
description: "Thêm watermark văn bản vào mọi trang",
},
"pdf-page-numbers": {
@@ -1108,15 +1108,15 @@ export const vi: TranslationKeys = {
progressLabel: "Đang trích xuất văn bản",
},
"ocr-pdf": {
quality: "Chat luong",
language: "Ngon ngu",
autoDetect: "Tu dong nhan dien",
quality: "Cht lượng",
language: "Ngôn ng",
autoDetect: "Tự động nhn din",
pages: "Trang",
pagesPlaceholder: "tất cả, 1-3, 5",
pagesHint: "Nhap so trang hoac pham vi (vd. 1-3, 5, 8-10). Toi da 50 trang.",
submit: "Trich xuat van ban",
submitBatch: "Trich xuat van ban ({count} tep)",
progressLabel: "Dang trich xuat van ban tu PDF",
pagesHint: "Nhp s trang hoc phm vi (vd. 1-3, 5, 8-10). Ti đa 50 trang.",
submit: "Trích xut văn bn",
submitBatch: "Trích xut văn bn ({count} tp)",
progressLabel: "Đang trích xut văn bn t PDF",
},
"blur-faces": {
blurRadius: "Bán kính làm mờ",
@@ -1343,21 +1343,21 @@ export const vi: TranslationKeys = {
photoGenerated: "Ảnh đã được tạo. Tải xuống từ bảng bên trái.",
},
"transcribe-audio": {
language: "Ngon ngu",
autoDetect: "Tu dong phat hien",
outputFormat: "Dinh dang dau ra",
plainText: "Van ban thuan",
submit: "Phien am",
submitBatch: "Phien am ({count} tep)",
progressLabel: "Dang phien am",
language: "Ngôn ng",
autoDetect: "Tự động phát hin",
outputFormat: "Định dng đầu ra",
plainText: "Văn bn thun",
submit: "Phiên âm",
submitBatch: "Phiên âm ({count} tp)",
progressLabel: "Đang phiên âm",
},
"auto-subtitles": {
language: "Ngon ngu",
autoDetect: "Tu dong phat hien",
format: "Dinh dang phu de",
submit: "Tao phu de",
submitBatch: "Tao phu de ({count} tep)",
progressLabel: "Dang tao phu de",
language: "Ngôn ng",
autoDetect: "Tự động phát hin",
format: "Định dng phụ đề",
submit: "To phụ đề",
submitBatch: "To phụ đề ({count} tp)",
progressLabel: "Đang to phụ đề",
},
"transparency-fixer": {
description: "Tải lên PNG có nền giả trong suốt và chúng tôi sẽ sửa chỉ với một cú nhấp.",
@@ -1372,16 +1372,16 @@ export const vi: TranslationKeys = {
progressLabel: "Đang sửa trong suốt",
},
"background-replace": {
color: "Mau nen",
submit: "Thay doi nen",
submitBatch: "Thay doi nen ({count} tep)",
progressLabel: "Dang thay doi nen",
color: "Màu nn",
submit: "Thay đổi nn",
submitBatch: "Thay đổi nn ({count} tp)",
progressLabel: "Đang thay đổi nn",
},
"blur-background": {
intensity: "Cuong do lam mo",
submit: "Lam mo nen",
submitBatch: "Lam mo nen ({count} tep)",
progressLabel: "Dang lam mo nen",
intensity: "Cường độ làm m",
submit: "Làm m nn",
submitBatch: "Làm m nn ({count} tp)",
progressLabel: "Đang làm m nn",
},
"watermark-text": {
watermarkText: "Văn bản hình mờ",
@@ -1538,9 +1538,9 @@ export const vi: TranslationKeys = {
errorFailed: "Không thể chụp trang",
placeholder: "Nhập URL và nhấn Chụp",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "Máy tính",
tablet: "Máy tính bảng",
mobile: "Di động",
custom: "Tùy chỉnh",
},
},
@@ -1735,7 +1735,7 @@ export const vi: TranslationKeys = {
reverse: "Đảo ngược",
extract: "Trích xuất",
rotateMode: "Xoay",
pixel: "Pixel",
pixel: "Điểm ảnh",
percentage: "Phần trăm",
colors: "Màu sắc",
dither: "Phân tán",
@@ -1837,7 +1837,7 @@ export const vi: TranslationKeys = {
progressLabel: "Đang tạo GIF",
},
"resize-video": {
preset: "Preset",
preset: "Mẫu có sẵn",
width: "Chiều rộng (px)",
height: "Chiều cao (px)",
hint: "Để trống một chiều để giữ tỷ lệ khung hình",
@@ -2234,7 +2234,7 @@ export const vi: TranslationKeys = {
progressLabel: "Đang mã hóa",
},
"unlock-pdf": {
password: "Password",
password: "Mật khẩu",
submit: "Mở khóa",
submitBatch: "Mở khóa ({count} tệp)",
progressLabel: "Đang giải mã",
@@ -2473,9 +2473,9 @@ export const vi: TranslationKeys = {
saved: "Đã lưu",
noChange: "không thay đổi",
download: "Tải xuống",
settingsSaved: "Cai dat cua ban da duoc luu.",
tryAgain: "Thu lai",
tryDifferentFile: "Thu tep khac",
settingsSaved: "Cài đặt ca bn đã được lưu.",
tryAgain: "Th li",
tryDifferentFile: "Th tp khác",
batchPartialSuccess: "{success} trong {total} đã xử lý. {failed} thất bại.",
dataResultsHint: "Kết quả hiển thị ở trên. Dùng nút sao chép trong bảng kết quả.",
downloadAsFile: "Tải xuống dạng tệp",
@@ -2842,10 +2842,10 @@ export const vi: TranslationKeys = {
resetPasswordAction: "Đặt lại mật khẩu",
deleteUserAction: "Xóa người dùng",
saveButton: "Lưu",
copyPasswordButton: "Sao chep mat khau",
passwordCopied: "Da sao chep!",
copyPasswordButton: "Sao chép mt khu",
passwordCopied: "Đã sao chép!",
copyPasswordWarning:
"Sao chep mat khau nay ngay bay gio. Ban se khong the xem lai sau khi tao nguoi dung.",
"Sao chép mt khu này ngay bây gi. Bn s không th xem li sau khi to người dùng.",
},
teams: {
heading: "Nhóm",
@@ -2957,7 +2957,7 @@ export const vi: TranslationKeys = {
runsColumn: "Lần chạy",
userColumn: "Người dùng",
bytesInColumn: "Byte vào",
poolColumn: "Pool",
poolColumn: "Nhóm",
p50Column: "p50",
p95Column: "p95",
storageHeading: "Lưu trữ thư viện",
@@ -3270,8 +3270,8 @@ export const vi: TranslationKeys = {
addUrlButton: "Thêm",
importMultipleUrls: "Nhập nhiều URL...",
filesSelected: "Đã chọn {count} tệp",
dropToAdd: "Tha de them tep",
dropToReplace: "Tha de thay the tep",
dropToAdd: "Thả để thêm tp",
dropToReplace: "Thả để thay thế tp",
},
reviewPanel: {
processedResultAlt: "Kết quả đã xử lý",
@@ -3351,8 +3351,8 @@ export const vi: TranslationKeys = {
goToWatermarkText: "Đến Hình mờ văn bản",
goToStripMetadata: "Đến Xóa siêu dữ liệu",
goToImageInfo: "Đến Thông tin ảnh",
processFile: "Xu ly tep",
downloadResult: "Tai ket qua",
processFile: "X lý tp",
downloadResult: "Ti kết qu",
},
resources: {
heading: "Tài nguyên",
+15 -15
View File
@@ -68,8 +68,8 @@ export const zhCN: TranslationKeys = {
},
modalities: {
image: "图片",
video: "Video",
audio: "Audio",
video: "视频",
audio: "音频",
documentsAndFiles: "PDF 与文件",
},
tools: {
@@ -130,7 +130,7 @@ export const zhCN: TranslationKeys = {
description: "AI 高精度图片文字识别",
},
"ocr-pdf": {
name: "PDF OCR",
name: "PDF 文字识别",
description: "使用AI驱动的OCR从PDF文档中提取文字",
},
"blur-faces": {
@@ -1442,7 +1442,7 @@ export const zhCN: TranslationKeys = {
cornerDotStyle: "角点样式",
foregroundColor: "前景色",
bgColor: "背景色",
logo: "Logo",
logo: "徽标",
downloadFormat: "下载格式",
submit: "生成 QR 码",
download: "下载 QR 码",
@@ -1468,9 +1468,9 @@ export const zhCN: TranslationKeys = {
errorFailed: "截取页面失败",
placeholder: "输入 URL 并点击截图",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "桌面端",
tablet: "平板",
mobile: "手机",
custom: "自定义",
},
},
@@ -1638,7 +1638,7 @@ export const zhCN: TranslationKeys = {
},
vectorize: {
preset: "预设",
logo: "Logo",
logo: "徽标",
illustration: "插画",
photo: "照片",
sketch: "素描",
@@ -1767,7 +1767,7 @@ export const zhCN: TranslationKeys = {
progressLabel: "正在创建 GIF",
},
"resize-video": {
preset: "Preset",
preset: "预设",
width: "宽度 (px)",
height: "高度 (px)",
hint: "留空其中一个维度以保持宽高比",
@@ -1805,7 +1805,7 @@ export const zhCN: TranslationKeys = {
brightness: "亮度",
contrast: "对比度",
saturation: "饱和度",
gamma: "Gamma",
gamma: "伽马",
submit: "应用",
submitBatch: "应用({count} 个文件)",
progressLabel: "正在调整颜色",
@@ -2061,7 +2061,7 @@ export const zhCN: TranslationKeys = {
strip: "清除所有元数据",
title: "标题",
artist: "艺术家",
album: "Album",
album: "专辑",
submit: "应用元数据",
submitBatch: "应用元数据({count} 个文件)",
progressLabel: "正在应用元数据",
@@ -2164,7 +2164,7 @@ export const zhCN: TranslationKeys = {
progressLabel: "正在加密",
},
"unlock-pdf": {
password: "Password",
password: "密码",
submit: "解锁",
submitBatch: "解锁({count} 个文件)",
progressLabel: "正在解密",
@@ -2834,7 +2834,7 @@ export const zhCN: TranslationKeys = {
tools: "工具",
files: "文件",
apiKeys: "API 密钥",
pipelines: "Pipeline",
pipelines: "流水线",
settings: "设置",
users: "用户",
teams: "团队",
@@ -2877,7 +2877,7 @@ export const zhCN: TranslationKeys = {
runsColumn: "运行次数",
userColumn: "用户",
bytesInColumn: "输入字节",
poolColumn: "Pool",
poolColumn: "队列",
p50Column: "p50",
p95Column: "p95",
storageHeading: "文件库存储",
@@ -3166,7 +3166,7 @@ export const zhCN: TranslationKeys = {
toolsUsed: "使用的工具",
none: "无",
delete: "删除",
pipeline: "Pipeline",
pipeline: "流水线",
download: "下载",
},
dropzone: {
+15 -15
View File
@@ -68,8 +68,8 @@ export const zhTW: TranslationKeys = {
},
modalities: {
image: "圖片",
video: "Video",
audio: "Audio",
video: "影片",
audio: "音訊",
documentsAndFiles: "PDF 與檔案",
},
tools: {
@@ -130,7 +130,7 @@ export const zhTW: TranslationKeys = {
description: "透過AI精準辨識擷取影像中的文字",
},
"ocr-pdf": {
name: "PDF OCR",
name: "PDF 文字辨識",
description: "使用AI驅動的OCR從PDF文件中擷取文字",
},
"blur-faces": {
@@ -1047,7 +1047,7 @@ export const zhTW: TranslationKeys = {
language: "語言",
autoDetect: "自動偵測",
pages: "頁面",
pagesPlaceholder: "all, 1-3, 5",
pagesPlaceholder: "全部, 1-3, 5",
pagesHint: "輸入頁碼或範圍(例如 1-3, 5, 8-10)。最多50頁。",
submit: "擷取文字",
submitBatch: "擷取文字({count}個檔案)",
@@ -1398,7 +1398,7 @@ export const zhTW: TranslationKeys = {
channelStats: "色彩通道統計",
yes: "是",
no: "否",
na: "N/A",
na: "不適用",
failedToRead: "讀取資訊失敗",
},
compare: {
@@ -1440,7 +1440,7 @@ export const zhTW: TranslationKeys = {
cornerDotStyle: "角點樣式",
foregroundColor: "前景色",
bgColor: "背景色",
logo: "Logo",
logo: "標誌",
downloadFormat: "下載格式",
submit: "產生QR碼",
download: "下載QR碼",
@@ -1466,9 +1466,9 @@ export const zhTW: TranslationKeys = {
errorFailed: "擷取頁面失敗",
placeholder: "輸入 URL 後點擊擷取",
presets: {
desktop: "Desktop",
tablet: "Tablet",
mobile: "Mobile",
desktop: "桌面版",
tablet: "平板",
mobile: "行動版",
custom: "自訂",
},
},
@@ -1636,7 +1636,7 @@ export const zhTW: TranslationKeys = {
},
vectorize: {
preset: "預設",
logo: "Logo",
logo: "標誌",
illustration: "插畫",
photo: "照片",
sketch: "素描",
@@ -1765,7 +1765,7 @@ export const zhTW: TranslationKeys = {
progressLabel: "正在建立 GIF",
},
"resize-video": {
preset: "Preset",
preset: "預設",
width: "寬度 (px)",
height: "高度 (px)",
hint: "留空其中一個尺寸以保持長寬比",
@@ -2059,7 +2059,7 @@ export const zhTW: TranslationKeys = {
strip: "移除所有中繼資料",
title: "標題",
artist: "演出者",
album: "Album",
album: "專輯",
submit: "套用中繼資料",
submitBatch: "套用中繼資料({count} 個檔案)",
progressLabel: "正在套用中繼資料",
@@ -2162,7 +2162,7 @@ export const zhTW: TranslationKeys = {
progressLabel: "正在加密",
},
"unlock-pdf": {
password: "Password",
password: "密碼",
submit: "解鎖",
submitBatch: "解鎖({count} 個檔案)",
progressLabel: "正在解密",
@@ -2875,7 +2875,7 @@ export const zhTW: TranslationKeys = {
runsColumn: "執行次數",
userColumn: "使用者",
bytesInColumn: "輸入位元組",
poolColumn: "Pool",
poolColumn: "處理池",
p50Column: "p50",
p95Column: "p95",
storageHeading: "檔案庫儲存空間",
@@ -3165,7 +3165,7 @@ export const zhTW: TranslationKeys = {
toolsUsed: "已使用的工具",
none: "無",
delete: "刪除",
pipeline: "Pipeline",
pipeline: "自動化流程",
download: "下載",
},
dropzone: {