Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 7 additions & 7 deletions js/i18n.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,20 +7,20 @@
// Only display names live here; full strings are lazy-loaded per language.

export const TRANSLATIONS = {
en: { 'lang.name': 'English' },
de: { 'lang.name': 'Deutsch' },
da: { 'lang.name': 'Dansk' },
it: { 'lang.name': 'Italiano' },
de: { 'lang.name': 'Deutsch' },
en: { 'lang.name': 'English' },
es: { 'lang.name': 'Español' },
pt: { 'lang.name': 'Português' },
fr: { 'lang.name': 'Français' },
tr: { 'lang.name': 'Türkçe' },
it: { 'lang.name': 'Italiano' },
ja: { 'lang.name': '日本語' },
ko: { 'lang.name': '한국어' },
uk: { 'lang.name': 'Українська' },
pl: { 'lang.name': 'Polski' },
pt: { 'lang.name': 'Português' },
ru: { 'lang.name': 'Русский' },
tr: { 'lang.name': 'Türkçe' },
uk: { 'lang.name': 'Українська' },
zh: { 'lang.name': '简体中文' },
pl: { 'lang.name': 'Polish' },
};

// ── Module state ──────────────────────────────────────────────────────────────
Expand Down
45 changes: 23 additions & 22 deletions js/i18n/ru.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,20 @@ export default {
"theme.light": "Светлая тема",
"theme.toggleTitle": "Переключить светлую / тёмную тему",
"theme.toggleAriaLabel": "Переключить светлую / тёмную тему",
"dropHint.text": "Перетащите сюда файл <strong>.stl</strong>, <strong>.obj</strong>, <strong>.3mf</strong> или <strong>.step</strong><br/>или <label for=\"stl-file-input\" class=\"link-label\">нажмите, чтобы выбрать</label>",
"dropHint.text": "Перетащите сюда файл <strong>.stl</strong>, <strong>.obj</strong>, <strong>.3mf</strong> или <strong>.step</strong><br/>или <label for=\"stl-file-input\" class=\"link-label\">нажмите для выбора файла</label>",
"step.dialogTitle": "Импорт STEP",
"step.modelSize": "Размер модели: {d} мм",
"step.custom": "Пользовательское",
"step.custom": "Пользовательские",
"step.surfaceDeviation": "Отклонение поверхности (мм)",
"step.normalDeviation": "Отклонение нормалей (°)",
"step.maxEdge": "Макс. длина ребра (мм)",
"step.normalDeviation": "Отклонение нормали (°)",
"step.maxEdge": "Максимальная длина ребра (мм)",
"step.import": "Импортировать",
"step.cancel": "Отмена",
"step.coarse": "Грубое",
"step.standard": "Стандартное",
"step.fine": "Высокое",
"progress.stepParse": "Чтение файла STEP…",
"progress.stepTessellate": "Тесселяция модели STEP…",
"step.fine": "Высокое качество",
"progress.stepParse": "Чтение STEP-файла…",
"progress.stepTessellate": "Тесселяция STEP-модели…",
"ui.wireframe": "Каркас",
"ui.perspective": "Перспективный вид",
"ui.controlsHint": "Левая кнопка: вращение · Правая кнопка: панорамирование · Колесо: масштаб",
Expand All @@ -44,9 +44,10 @@ export default {
"projection.planarXZ": "Плоская XZ",
"projection.planarYZ": "Плоская YZ",
"sections.transform": "Преобразование",
"labels.scaleU": "Масштаб U",
"labels.scaleV": "Масштаб V",
"labels.scaleManualHint": "Введите значение вручную для уменьшения или увеличения масштаба",
"labels.textureSizeU": "Размер U (мм)",
"labels.textureSizeV": "Размер V (мм)",
"tooltips.textureSize": "Физический размер одного повторения текстуры в миллиметрах — одинаковое значение обеспечивает одинаковый физический размер рисунка на любой модели.",
"labels.scaleManualHint": "Введите значение в поле, чтобы уменьшить или увеличить размер",
"labels.offsetU": "Смещение U",
"labels.offsetV": "Смещение V",
"labels.rotation": "Поворот",
Expand Down Expand Up @@ -106,17 +107,17 @@ export default {
"precision.warningBody": "Предполагаемое количество треугольников: ~{n}. Это может замедлить работу браузера. Продолжить?",
"labels.boundaryFalloff": "Плавная граница маски ⓘ",
"tooltips.boundaryFalloff": "Постепенно уменьшает величину смещения до нуля у границ маски, предотвращая наложение треугольников на стыке текстурированных и нетекстурированных областей.",
"sections.smoothMask": "Плавная граница маски ⓘ",
"sections.smoothMask": "Сглаживание маски ⓘ",
"labels.falloffDistance": "Расстояние",
"tooltips.falloffDistance": "Ширина переходной зоны в миллиметрах. 0 = выкл.",
"tooltips.falloffDistance": "Ширина зоны плавного перехода в миллиметрах. 0 = отключено.",
"labels.falloffCurve": "Переход",
"tooltips.falloffCurve": "Форма перехода от нуля до полной высоты текстуры на дистанции сглаживания.",
"tooltips.falloffCurve": "Форма перехода от нулевой до полной высоты текстуры в пределах зоны сглаживания маски.",
"falloffCurve.linear": "Линейный",
"falloffCurve.linearTitle": "Постоянный наклон от края маски до полной высоты.",
"falloffCurve.linearTitle": "Постоянный наклон от края маски до полной высоты текстуры.",
"falloffCurve.scurve": "S-кривая",
"falloffCurve.scurveTitle": "Плавное начало и завершение — без заметных изломов на краях перехода.",
"falloffCurve.ease": "Мягкий",
"falloffCurve.easeTitle": "Начинается очень плавно у края маски, затем быстрее нарастает до полной высоты.",
"falloffCurve.scurveTitle": "Плавное начало и завершение — без заметной границы на обоих концах перехода.",
"falloffCurve.ease": "Плавное нарастание",
"falloffCurve.easeTitle": "Начинается очень плавно у края маски, затем переходит к более крутым значениям до полной высоты.",
"labels.symmetricDisplacement": "Симметричное смещение ⓘ",
"tooltips.symmetricDisplacement": "Если включено, 50% серого соответствует отсутствию смещения; белый цвет создаёт выступ, чёрный - углубление. Это позволяет сохранить общий объём модели примерно неизменным.",
"labels.displacementPreview": "3D-предпросмотр ⓘ",
Expand Down Expand Up @@ -148,9 +149,9 @@ export default {
"ui.harvestFlat": "Продолжать упрощение плоских поверхностей после достижения лимита треугольников",
"ui.harvestTol": "Допуск для плоских поверхностей (мм)",
"tooltips.harvestTol": "Максимально допустимое отклонение поверхности при объединении плоских участков. Большие значения позволяют удалить больше треугольников ценой большего отклонения. Для FDM-печати значение около 0,005 мм практически незаметно.",
"ui.preserveUntexturedHeading": "Сохранять нетекстурированные поверхности",
"ui.preserveUntexturedDesc": "Поверхности без текстуры (нарисованная маска, угловые маски) остаются точно такими, как в исходной модели: регуляризация сетки и децимация не перемещают и не удаляют их вершины, поэтому скругления и мелкие детали остаются нетронутыми. Если одни только нетекстурированные поверхности превышают лимит треугольников, экспорт превысит лимит вместо ухудшения текстуры.",
"ui.preserveUntextured": "Не изменять нетекстурированные поверхности",
"ui.preserveUntexturedHeading": "Сохранять поверхности без текстуры",
"ui.preserveUntexturedDesc": "Сохранять поверхности, на которые не накладывается текстура (маска окрашивания, маски угла), точно в исходном виде: регуляризация и упрощение сетки не будут перемещать или удалять их вершины, поэтому скругления и мелкие детали останутся неизменными. Если только поверхности без текстуры превышают установленный предел количества треугольников, экспорт превысит этот предел вместо ухудшения качества текстуры.",
"ui.preserveUntextured": "Не изменять поверхности без текстуры",
"alerts.bakeFailed": "Не удалось запечь текстуру: {msg}",
"progress.finalizing": "Завершение…",
"sections.export": "Экспорт ⓘ",
Expand All @@ -167,7 +168,7 @@ export default {
"labels.outputTriangles": "Количество треугольников",
"tooltips.outputTriangles": "Сначала сетка полностью подразделяется, затем упрощается до указанного количества треугольников",
"warnings.safetyCapHit": "⚠ При подразделении достигнут защитный лимит треугольников - результат может оказаться менее детализированным, чем соответствует выбранной длине ребра.",
"warnings.preserveOverBudget": "⚠ Нетекстурированные поверхности сами по себе превышают лимит треугольников — они сохранены, поэтому экспорт превышает лимит.",
"warnings.preserveOverBudget": "⚠ Поверхности без текстуры сами по себе превышают лимит количества треугольников — они были сохранены, поэтому размер экспортируемой сетки превышает установленный лимит.",
"ui.exportStl": "Экспорт в STL",
"ui.export3mf": "Экспорт в 3MF",
"tooltips.exportStl": "Совместим практически со всеми слайсерами",
Expand Down Expand Up @@ -253,7 +254,7 @@ export default {
"header.loadGo": "Загрузить",
"alerts.importFailed": "Не удалось загрузить проект: {msg}",
"labels.snapSeamless": "Подогнать для бесшовного повторения ⓘ",
"tooltips.snapSeamless": "Подбирает масштаб по оси U так, чтобы текстура целое число раз оборачивалась вокруг цилиндра или сферы без видимого шва.",
"tooltips.snapSeamless": "Округляет масштаб U до целого числа повторений, чтобы текстура бесшовно замыкалась вокруг цилиндра или сферы.",
"labels.cylinderAxis": "Ось цилиндра",
"ui.cylinderAutofit": "Автоподбор",
"tooltips.cylinderAutofit": "Подбирает окружность по внешним вершинам модели методом наименьших квадратов.",
Expand Down