Doc-HTML-Translate Документация (RU)

Быстрое чтение книг локально и бесплатный перевод в Chrome

Конвертируйте EPUB/PDF и другие форматы в локальные HTML-страницы, затем читайте в Chrome и переводите встроенным переводчиком браузера. Без API-ключа, без подписки и без лишних церемоний.

Ипостаси - все способы пользоваться

Doc-HTML-Translate существует в нескольких ипостасях; у них общий конвертер и общая идея - отдать браузеру чистый HTML и дать ему перевести. Выбирай, что удобнее.

Рекомендуемый сценарий (бесплатно)

Самый удобный ежедневный путь, и да, «бесплатно» здесь действительно значит бесплатно:

  • Открыть файл приложением или запустить обычную команду
  • Открытие сгенерированного index в Chrome
  • Перевод страницы на нужный язык через встроенный перевод Chrome
doc-html-translate.exe "book.epub" # или # doc-html-translate.exe "book.pdf"

Плюсы: без API-ключа, без платных вызовов, максимально быстрый старт.

Быстрый старт

Сборка

go build -o build/doc-html-translate.exe ./cmd/doc-html-translate

Запуск

doc-html-translate.exe "book.epub" doc-html-translate.exe -notranslate "book.epub" # явный режим без перевода doc-html-translate.exe -src en -dst ru "book.epub" doc-html-translate.exe -google "book.epub" doc-html-translate.exe -ollama "book.epub"

Поддерживаемые форматы

EPUB, PDF, TXT, Markdown, FB2, RTF, HTML, MOBI, AZW3 и комиксы CBZ/CBR/CB7/CBT. Набор, прямо скажем, приличный.

А ещё комиксы (CBZ / CBR / CB7 / CBT): это контейнер со страницами-картинками без текстового слоя, он открывается страница за страницей с принудительно включённым OCR, поэтому текст в «пузырях» распознаётся и ложится переводимыми плашками поверх каждой страницы. CBZ и CBT не требуют ничего дополнительно; CBR и CB7 требуют установленного 7-Zip (тот же приём с внешним инструментом, что и MOBI с Calibre).

А ещё одиночная картинка (PNG, JPG, JPEG, WebP, GIF, BMP, TIFF): приложение распознаёт на ней текст и накладывает его переводимыми плашками поверх изображения, чтобы встроенный перевод страницы в Chrome/Edge работал прямо на картинке - тот же оверлей, что делает расширение для браузера. Нужен OCR-движок Tesseract (см. -ocr-lang).

MOBI и AZW3: требуется установленный Calibre. Комиксы CBR и CB7: требуется установленный 7-Zip (CBZ и CBT не требуют ничего дополнительно). Файлы с DRM не поддерживаются - конвертер уважает замки, которые не умеет вскрывать.

Обычный текст (.txt) декодируется по ведущим байтам - метка порядка байтов UTF-8/UTF-16, затем корректный UTF-8, затем устаревшая кириллическая кодовая страница (Windows-1251, KOI8-R, CP866) по детекции - так что .txt из времён DOS или сохранённый в Notepad как «Unicode» читается текстом, а не «кракозябрами». Нечитаемый бинарник (.docx, .djvu или архив комикса без 7-Zip) отклоняется с указанием формата, а не превращается в мусорный документ.

Удобство чтения

В сгенерированный HTML встроен небольшой клиентский слой для чтения - сервер нянчить не нужно, спокойно работает по file://:

У одностраничных документов нет навбара, поэтому этот слой к ним не применяется.

Дополнительные внешние инструменты

Приложение работает сразу для EPUB, TXT, FB2, RTF, HTML, Markdown. Инструменты ниже строго опциональны - ставьте их, только если хотите полную поддержку PDF-изображений и дополнительных форматов.

ИнструментНазначениеНужен дляКак установить
pdftotext
(Xpdf / Poppler)
Качественное извлечение текста из PDF - лучше справляется со сложными шрифтами, лигатурами, многоколоночным макетом PDF-файлы - необязательно, при отсутствии используется встроенный fallback xpdfreader.com → «Xpdf tools»
или уже входит в Git for Windows
ffmpeg Конвертирует JPEG 2000 изображения (.jpx) из PDF в JPEG - браузеры и в 2026 году вежливо отказываются показывать JPEG 2000 PDF-файлы с изображениями в формате JPEG2000 (распространено в коммерческих PDF) gyan.dev/ffmpeg → «release essentials»
или winget install ffmpeg
Calibre Конвертирует MOBI / AZW3 в EPUB перед обработкой Обязателен для поддержки форматов MOBI и AZW3 calibre-ebook.com
7-Zip Распаковывает комиксы CBR (RAR) и CB7 (7z) в страницы-картинки Комиксы CBR и CB7 - CBZ и CBT не требуют ничего дополнительно 7-zip.org

Без pdftotext: используется встроенный Go-ридер PDF (чуть ниже качество). Без ffmpeg: изображения JPEG2000 в PDF не будут видны в браузере. Без Calibre: файлы MOBI/AZW3 не открываются. Без 7-Zip: комиксы CBR/CB7 не открываются.

Основные флаги

Все опциональны. Значения по умолчанию разумны, так что эту таблицу можно игнорировать, пока не появится своё мнение.

ФлагПо умолчаниюОписание
-notranslatefalseТолько конвертация, без перевода
-noopenfalseНе открывать браузер автоматически
-googlefalseПеревод через Google Cloud Translation API
-ollamafalseЛокальный перевод Ollama
-ocrfalseРаспознать текст на изображениях документа (OCR) и наложить его сверху настоящим переводимым HTML (нужен Tesseract)
-ocr-lang(-src)Язык(и) OCR, напр. eng или eng+rus. Если не задан - берётся из -src (иначе eng), и приложение проверяет письменность страницы: есть данные для неё - язык добавляется, а не заменяется (rus+eng); нет - страница остаётся без плашек, а в лог идёт строка с нужным пакетом. Заданный флаг эту проверку отключает
-ocr-langsfalseПоказать установленные/доступные языки OCR и выйти
-ocr-downloademptyСкачать языковой пакет OCR (напр. -ocr-download rus) и выйти
-max-cost0Прервать платный перевод до отправки, если оценка стоимости в USD превышает N. Если сомневаетесь, 0 (без лимита) - вполне достойный выбор
-split5000Разбивка страниц по символам, 0 отключает
-toc-depth0Глубина вложенности оглавления на index.html, 0 = без ограничений, 1 = только главы
-folderemptyПапка для результата
-srcenЯзык источника
-dstruЯзык перевода
-ui-lang(системный)Язык интерфейса: en ru uk de it es fr pt ar hi bn ur zh. Пусто - язык Windows
-forcefalseПересобрать даже при готовом output
-registerfalseОпционально сделать приложение обработчиком по умолчанию для EPUB, PDF и других поддерживаемых файлов (по умолчанию выключено; та же кнопка-тумблер в приложении doc-html-ui). Первый запуск лишь добавляет пункт правого клика и предлагает это.
-unregisterfalseСнять ассоциацию обработчика по умолчанию (пункт правого клика «Convert to HTML» и «Открыть с помощью» остаются).
-register-openwithfalseДобавить приложение в список Windows "Открыть с помощью" и пункт правого клика «Convert to HTML» без назначения обработчиком по умолчанию. Приложение doc-html-ui делает это автоматически при запуске, так что программа всегда доступна, даже если вы не назначали её по умолчанию.
-reportfalseУпаковать недавние журналы запусков и сводку окружения в архив для автора, напечатать путь к нему и выйти

Все опции выше доступны и в графическом приложении doc-html-ui - выбор файла, drag & drop, глубина оглавления, лимит стоимости и тумблер «обработчик по умолчанию» (по желанию, по умолчанию выключен; пункт правого клика «Convert to HTML» добавляется всегда). В сборке Microsoft Store именно GUI - запускаемая точка входа, а двойной клик по файлу по-прежнему запускает конвертер из командной строки.

Отправка журналов автору

Когда конвертация идёт не так, описания по памяти обычно не хватает, чтобы воспроизвести проблему. Приложение хранит недавние журналы запусков на диске - до 20 запусков или 20 МБ, самые старые удаляются первыми, - так что сбой можно показать и через час, и после падения программы.

Откройте раздел О программе внизу настроек приложения doc-html-ui. В нём видны версия, издание (портативное или из Microsoft Store) и найден ли движок конвертера, и есть одна кнопка - Отправить журналы автору. Одно нажатие собирает единый архив, открывает его папку с выделенным файлом, копирует путь в буфер обмена и открывает готовое письмо в вашей почтовой программе. В командной строке тот же архив собирает флаг -report, печатая, куда он лёг.

Архив пишется в %LOCALAPPDATA%\doc-html-translate\reports\ и содержит ровно три вещи:

Всё содержимое проходит через редактирование: любое значение, похожее на ключ, токен, пароль или ключ Google API, превращается в <redacted>, а ваши папки сворачиваются до %USERPROFILE% и %LOCALAPPDATA%. Имена файлов документов сохраняются намеренно - по журналу, который не с чем сопоставить, обычно ничего не сделать. Ключа Google API в архиве нет никогда; автоматический тест не даст ему туда попасть. Размер архива ограничен 15 МБ: самые старые журналы отбрасываются первыми, и вам сообщают, сколько их не поместилось.

Ничего не отправляется автоматически. Приложение не открывает для этого ни одного сетевого соединения; оно даёт вам файл и неотправленное письмо, а прикрепляете архив и нажимаете «Отправить» вы сами. Кнопка Открыть архив в том же разделе позволяет сначала заглянуть внутрь, а Очистить журналы - вообще не хранить историю запусков на диске.

У расширения для браузера нет хранилища журналов, поэтому оно предлагает то, что может дать честно: кнопку Скопировать диагностику в блоке «О расширении» на странице настроек. Она копирует в буфер обмена короткую сводку на английском - версия расширения, браузер, язык интерфейса, ваш набор настроек, а также формат, число страниц и последнюю ошибку последнего документа. Ни текста документов, ни списка ваших сайтов там нет.

Companion-приложение: FastMediaSorter LITE

Для документов, которые являются картинками, а не текстом - скриншоты, манга, сфотографированные или отсканированные страницы, то, что текстовый конвертер мысли читать пока не умеет - используйте FastMediaSorter LITE, бесплатное Windows-приложение для открытия и сортировки изображений и видео со встроенным OCR и переводом прямо на изображении. Нажмите T на любой картинке, чтобы распознать текст и наложить перевод на вашем языке (локальный Ollama или LibreTranslate). Дополняет Doc-HTML-Translate, который работает с книжными и текстовыми форматами.

winget install SerZhyAle.FastMediaSorter

Скачивание приложения

Языки интерфейса

Интерфейс приложения и расширения доступен на 13 языках: en ru uk de it es fr pt ar hi bn ur zh. Английский, русский и украинский вычитаны автором; остальные десять переведены машинно и не вычитаны - исправления присылайте на sza@ukr.net.