Быстрое чтение книг локально и бесплатный перевод в Chrome
Конвертируйте EPUB/PDF и другие форматы в локальные HTML-страницы, затем читайте в Chrome и переводите встроенным переводчиком браузера. Без API-ключа, без подписки и без лишних церемоний.
Ипостаси - все способы пользоваться
Doc-HTML-Translate существует в нескольких ипостасях; у них общий конвертер и общая идея - отдать браузеру чистый HTML и дать ему перевести. Выбирай, что удобнее.
- CLI -
doc-html-translate.exe, конвертер командной строки и обработчик файловых ассоциаций Windows. Его флаги описаны на этой странице.
- GUI-приложение -
doc-html-ui.exe, оконный интерфейс со всеми флагами ниже: выбор файла, drag & drop и тумблер «обработчик по умолчанию» (по желанию, по умолчанию выключен).
- Приложение в Microsoft Store - тот же десктоп (GUI + CLI) как авто-обновляемый MSIX с подписью Store: Microsoft Store.
- Расширение для браузера - перерисовывает документы (PDF, EPUB, MOBI, AZW3, FB2, RTF, TXT, Markdown, HTML, CBZ/CBT-комиксы) в чистый HTML прямо в браузере, чтобы встроенный «Перевести страницу» работал на них без установки приложения: Chrome Web Store · страница расширения.
Рекомендуемый сценарий (бесплатно)
Самый удобный ежедневный путь, и да, «бесплатно» здесь действительно значит бесплатно:
- Открыть файл приложением или запустить обычную команду
- Открытие сгенерированного 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://:
- Темы чтения - переключатель в навбаре (и на
index.html) циклит Light / Sepia / Dark / Night. Выбор хранится в localStorage и применяется на каждой странице.
- Позиция чтения - прокрутка сохраняется для каждой книги, так что приложение помнит, где вы остановились, даже когда вы сами уже не помните. На
index.html появляется ссылка «Continue reading» на последнюю открытую страницу, а в навбаре - тонкий индикатор прогресса по всей книге.
- Лимит расходов - для платных движков флаг
-max-cost N превращает оценку стоимости (символы / 1e6 * $20) в жёсткий лимит до отправки: если оценка превышает N, перевод пропускается, а книга всё равно собирается без перевода.
У одностраничных документов нет навбара, поэтому этот слой к ним не применяется.
Дополнительные внешние инструменты
Приложение работает сразу для 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 не открываются.
Основные флаги
Все опциональны. Значения по умолчанию разумны, так что эту таблицу можно игнорировать, пока не появится своё мнение.
| Флаг | По умолчанию | Описание |
| -notranslate | false | Только конвертация, без перевода |
| -noopen | false | Не открывать браузер автоматически |
| -google | false | Перевод через Google Cloud Translation API |
| -ollama | false | Локальный перевод Ollama |
| -ocr | false | Распознать текст на изображениях документа (OCR) и наложить его сверху настоящим переводимым HTML (нужен Tesseract) |
| -ocr-lang | (-src) | Язык(и) OCR, напр. eng или eng+rus (по умолчанию из -src, иначе eng) |
| -ocr-langs | false | Показать установленные/доступные языки OCR и выйти |
| -ocr-download | empty | Скачать языковой пакет OCR (напр. -ocr-download rus) и выйти |
| -max-cost | 0 | Прервать платный перевод до отправки, если оценка стоимости в USD превышает N. Если сомневаетесь, 0 (без лимита) - вполне достойный выбор |
| -split | 5000 | Разбивка страниц по символам, 0 отключает |
| -toc-depth | 0 | Глубина вложенности оглавления на index.html, 0 = без ограничений, 1 = только главы |
| -folder | empty | Папка для результата |
| -src | en | Язык источника |
| -dst | ru | Язык перевода |
| -ui-lang | (системный) | Язык интерфейса: en ru uk de it es fr pt ar hi bn ur zh. Пусто - язык Windows |
| -force | false | Пересобрать даже при готовом output |
| -register | false | Опционально сделать приложение обработчиком по умолчанию для EPUB, PDF и других поддерживаемых файлов (по умолчанию выключено; та же кнопка-тумблер в приложении doc-html-ui). Первый запуск лишь добавляет пункт правого клика и предлагает это. |
| -unregister | false | Снять ассоциацию обработчика по умолчанию (пункт правого клика «Convert to HTML» и «Открыть с помощью» остаются). |
| -register-openwith | false | Добавить приложение в список Windows "Открыть с помощью" и пункт правого клика «Convert to HTML» без назначения обработчиком по умолчанию. Приложение doc-html-ui делает это автоматически при запуске, так что программа всегда доступна, даже если вы не назначали её по умолчанию. |
Все опции выше доступны и в графическом приложении doc-html-ui - выбор файла, drag & drop, глубина оглавления, лимит стоимости и тумблер «обработчик по умолчанию» (по желанию, по умолчанию выключен; пункт правого клика «Convert to HTML» добавляется всегда). В сборке Microsoft Store именно GUI - запускаемая точка входа, а двойной клик по файлу по-прежнему запускает конвертер из командной строки.
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.