7c6b182402
build / build (push) Failing after 10s
Программа накладывает русский перевод прямо на английские надписи — как переводчик по фото, только для монитора. Работает с играми, интерфейсами и документами: распознаёт кадр, собирает текст в связные блоки, переводит и рисует плашки под цвет фона. Распознавание — встроенный Windows.Media.Ocr, офлайн. Перевод — цепочка движков с автопереключением (google, lingva, mymemory), потому что до разных сервисов из разных сетей достучаться получается по-разному. Собирается без .NET SDK: Roslyn из Build Tools плюс сборки Framework 4.8, которые уже есть в системе. На выходе один exe без установщика. Главная сложность оказалась не в переводе, а в том, чтобы понять, где на экране связный текст, а где отдельные надписи. Классические алгоритмы сегментации решают это по межстрочному зазору, но в плотном интерфейсе он одинаков у строк абзаца и у соседних контролов. Поэтому решение принимает ансамбль признаков: фон, граница между строками, заполненность строки, кегль. Надписи на чужом языке отсеиваются тремя уровнями — форма слова, вторая модель распознавания и частоты буквенных пар. Чтобы правки эвристик не оценивались на глаз, в tools лежат эталонные кадры и RenderTest: прогон конвейера без окна с подсчётом попаданий. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
88 lines
5.2 KiB
Plaintext
88 lines
5.2 KiB
Plaintext
ПЕРЕВОДЧИК ЭКРАНА
|
|
=================
|
|
|
|
Накладывает русский перевод прямо поверх английского текста на экране —
|
|
как Яндекс.Переводчик по фото, только для монитора. Работает с чем угодно:
|
|
игры, сайты, программы, PDF.
|
|
|
|
|
|
КАК ЗАПУСТИТЬ
|
|
-------------
|
|
|
|
1. Распакуй папку куда угодно (например, на рабочий стол).
|
|
2. Запусти ScreenTranslator.exe
|
|
3. Windows скажет «SmartScreen защитил ваш компьютер» — это потому, что
|
|
у файла нет платной подписи. Жми «Подробнее» → «Выполнить в любом случае».
|
|
4. Появится значок в трее (синий кружок «AЯ», рядом с часами). Всё, работает.
|
|
|
|
Окна никакого нет и не должно быть — программа ждёт горячую клавишу.
|
|
|
|
|
|
КАК ПОЛЬЗОВАТЬСЯ
|
|
----------------
|
|
|
|
Ctrl + Alt + Z перевести тот монитор, где сейчас курсор
|
|
Ctrl + Alt + X обвести рамкой кусок экрана и перевести только его
|
|
|
|
Esc закрыть перевод (или ещё раз Ctrl+Alt+Z)
|
|
пробел пока держишь — видно оригинал под переводом
|
|
клик по тексту скопировать перевод в буфер
|
|
Ctrl + C скопировать весь перевод
|
|
|
|
Как это выглядит: экран замирает, английские надписи закрываются плашками
|
|
под цвет фона, на них русский текст. Переведённые места подчёркнуты тонкой
|
|
синей линией. Перевод занимает пару секунд, всё это время видно, что
|
|
программа работает.
|
|
|
|
В игре лучше оконный или безрамочный режим — в полноэкранном Windows
|
|
не даёт рисовать поверх.
|
|
|
|
|
|
ЧТО ХОЧЕТСЯ ПРОВЕРИТЬ
|
|
---------------------
|
|
|
|
Главное — связный текст: описания квестов, книги, диалоги, подсказки.
|
|
Он должен переводиться целыми фразами, а не по отдельным словам.
|
|
|
|
Ещё интересно:
|
|
- меню и панели (окна профессий, настройки, инвентарь);
|
|
- не наезжают ли плашки на соседние надписи;
|
|
- успевает ли по скорости.
|
|
|
|
Если что-то пойдёт не так — нажми PrintScreen прямо поверх перевода
|
|
(оверлей от этого не закроется) и скинь скриншот целиком, не обрезая.
|
|
По полному кадру видно, где именно проблема.
|
|
|
|
|
|
ЧТО УЖЕ ИЗВЕСТНО
|
|
----------------
|
|
|
|
- Названия переводятся буквально: Steam → «Пар», Discord → «Раздор».
|
|
Отличить название от обычного слова программа не может, это нормально.
|
|
- Рабочий стол и панель задач переводить бесполезно — там одни названия.
|
|
- Совсем мелкие надписи (8 пикселей, вкладки браузера) распознаются плохо.
|
|
- Русский текст на экране программа старается не трогать, но иногда
|
|
что-то проскакивает.
|
|
|
|
|
|
ЕСЛИ НЕ РАБОТАЕТ
|
|
----------------
|
|
|
|
Ничего не происходит по Ctrl+Alt+Z
|
|
Комбинацию мог занять кто-то другой (часто это Яндекс.Диск или Punto).
|
|
Открой config.json блокнотом, поменяй hotkeyTranslate на другую,
|
|
например "Ctrl+Alt+Q", потом правый клик по значку в трее →
|
|
«Перечитать настройки».
|
|
|
|
Пишет, что нет распознавания текста
|
|
Нужен языковой компонент Windows. Параметры → Время и язык →
|
|
Язык и регион → у английского языка «...» → Компоненты языка →
|
|
поставить галочку «Распознавание текста». Обычно он уже стоит.
|
|
|
|
Не переводит, ругается на сеть
|
|
Правый клик по значку в трее → «Проверить переводчики». Покажет,
|
|
какой из трёх сервисов отвечает, а какой нет. Скинь этот результат.
|
|
|
|
Настройки — файл config.json рядом с программой, открывается блокнотом.
|
|
После правки: значок в трее → «Перечитать настройки», перезапуск не нужен.
|