Doc-HTML-Translate. ⤓ Chrome Web Store⤓ Chrome Web Store⤓ Chrome Web Store
Расширение для браузера: открой документ (PDF, EPUB, MOBI и др.) · он станет чистым HTML · переведи страницу Browser extension: open a document (PDF, EPUB, MOBI, ..) · it becomes clean HTML · translate the page Розширення для браузера: відкрий документ (PDF, EPUB, MOBI та ін.) · він стане чистим HTML · переклади сторінку

Переводи PDF, EPUB, MOBI и другие форматы прямо в браузере - бесплатно Translate PDF, EPUB, MOBI and more right in your browser - for free Перекладай PDF, EPUB, MOBI та інші формати прямо в браузері - безкоштовно

Браузер умеет переводить любую веб-страницу бесплатно, но не PDF и не EPUB: встроенная читалка рисует текст PDF на холсте, и переводчик его не видит, а EPUB браузер вообще не открывает. Это расширение (спутник приложения Doc-HTML-Translate) перерисовывает PDF или EPUB в чистый HTML с абзацами и заголовками - и встроенный «Перевести страницу» работает как на обычном сайте. Всё локально: ни ключей, ни загрузки файлов на сервер. Революционная идея: показать переводчику текст, который он может прочитать. Теперь оно открывает и MOBI, AZW3, FB2, RTF, TXT, Markdown, локальный HTML и CBZ/CBT-комиксы (комиксы CBR и CB7 - только в десктоп-приложении). Browsers translate any web page for free, but not PDFs or EPUBs: the built-in PDF viewer paints text on a canvas the translator can't read, and EPUBs don't open in the browser at all. This extension (a companion to the Doc-HTML-Translate app) re-renders the PDF or EPUB as clean HTML paragraphs and headings - so the built-in "Translate page" works just like on any website. Everything stays local: no keys, no uploads. The radical idea: show the translator text it can actually read. It now opens MOBI, AZW3, FB2, RTF, TXT, Markdown, local HTML and CBZ/CBT comics too (CBR and CB7 comics are desktop-app only). Браузер перекладає будь-яку веб-сторінку безкоштовно, але не PDF і не EPUB: вбудована читалка малює текст PDF на полотні, і перекладач його не бачить, а EPUB браузер взагалі не відкриває. Це розширення (супутник застосунку Doc-HTML-Translate) перемальовує PDF чи EPUB у чистий HTML з абзацами та заголовками - і вбудований «Перекласти сторінку» працює як на звичайному сайті. Усе локально: без ключів і без завантаження файлів на сервер. Революційна ідея: показати перекладачеві текст, який він справді може прочитати. Тепер воно відкриває й MOBI, AZW3, FB2, RTF, TXT, Markdown, локальний HTML та CBZ/CBT-комікси (комікси CBR і CB7 - лише в десктоп-застосунку).

Где взятьAvailabilityДе взяти

Расширение доступно в Chrome Web Store - установка в один клик. Можно также загрузить распакованным (Load unpacked) из папки extension/ репозитория. Также в Edge Add-ons. Работает в Chrome и Edge (Chromium, MV3). The extension is available on the Chrome Web Store - one-click install. You can also load it unpacked from the repo's extension/ folder. Also on Edge Add-ons. Works in Chrome and Edge (Chromium, MV3). Розширення доступне в Chrome Web Store - встановлення в один клік. Можна також завантажити розпакованим (Load unpacked) з теки extension/ репозиторію. Також у Edge Add-ons. Працює в Chrome та Edge (Chromium, MV3).

  1. Открой chrome://extensions и включи Режим разработчика.Open chrome://extensions and enable Developer mode.Відкрий chrome://extensions і ввімкни Режим розробника.
  2. Load unpacked → выбери папку extension/.Load unpacked → pick the extension/ folder.Load unpacked → обери теку extension/.
  3. Кликни иконку doc-html-translateOpen a PDF or EPUB file.. → выбери PDF или EPUB. Дальше «Перевести страницу».Click the doc-html-translate icon → Open a PDF or EPUB file.. → pick a PDF or EPUB. Then "Translate page".Клікни іконку doc-html-translateOpen a PDF or EPUB file.. → обери PDF або EPUB. Далі «Перекласти сторінку».

Что это и зачем

Перевод PDF в браузере без приложения и без ключей

Doc-HTML-Translate как настольное приложение конвертирует EPUB/PDF/MOBI и другие форматы в локальный HTML. Это расширение делает то же самое для PDF и EPUB прямо в браузере. Для PDF оно извлекает текст (через PDF.js, всё локально) и раскладывает его обычными абзацами и заголовками <p>/<h2>; для EPUB - распаковывает книгу и объединяет её главы в один чистый HTML-документ. После этого встроенный «Перевести страницу» в Chrome или Edge работает как на любом сайте.

Главное

Никаких API-ключей и загрузки файлов. Извлечение и вёрстка - на твоём устройстве; в сеть ходит только встроенный переводчик браузера, который ты включаешь сам.

Установка

Chrome Web Store в один клик или Load unpacked

Проще всего - из Chrome Web Store: открой страницу и нажми «Установить». Подходит для Chrome и Edge (Chromium). Дальше - сразу к разделу «Как пользоваться».

Ручная установка из исходников (для разработки или Edge без магазина):

  1. Возьми папку extension/ из репозитория (или из релиза). При сборке из исходников один раз выполни npm install && npm run vendor внутри неё.
  2. Открой chrome://extensions (или edge://extensions), включи Режим разработчика.
  3. Нажми Load unpacked и выбери папку extension/.

Для авто-перехвата локальных file:// PDF включи в карточке расширения «Allow access to file URLs». Для PDF по http(s) ничего включать не нужно.

Как пользоваться

Три способа открыть PDF или EPUB - выбери любимый
Способ 1

Из попапа

Клик по иконке расширения → Open a PDF or EPUB file.. → в открывшейся вкладке Open file → выбери файл. Ни тумблеров, ни пути в адресе - никаких церемоний.

Способ 2

Правый клик по ссылке

Правый клик по ссылке на документ → Открыть через doc-html-translate. Работает без настройки - основной способ по требованию теперь, когда авто-перехват выключен по умолчанию.

Способ 3

Авто-перехват ссылок

Включи «Reflow PDFs & EPUBs» в попапе (по умолчанию выключено), чтобы ссылки на .pdf/.epub по http(s) сами перенаправлялись во вьюер; для file:// включи ещё «Allow access to file URLs».

В любом случае дальше: меню браузера → «Перевести страницу» → твой язык.

Совет

Способ через выбор файла самый надёжный: путь к файлу нигде не появляется в URL, поэтому сторонние блокировщики контента его не трогают, и не нужен тумблер доступа к файлам.

Возможности чтения

Тулбар, оглавление, темы, тумблеры
  • Тулбар: размер и семья шрифта, светлая/сепия/тёмная тема, переход по номеру страницы, кнопка «Open file» и «Original PDF» (открыть исходный PDF в нативной читалке; для EPUB скрыта - нативной читалки EPUB нет).
  • Оглавление: строится из закладок PDF (outline) или из EPUB-навигации (nav.xhtml / toc.ncx) - сворачиваемый сайдбар с якорями.
  • Язык: определяется автоматически и проставляется в <html lang>, чтобы браузер предложил правильный перевод.
  • Тумблеры: глобальный вкл/выкл и отключение на конкретном сайте - из попапа; тема и подсказка исходного языка - в настройках.

Как это работает и приватность

Reflow вместо холста; всё локально

Ключевое решение - reflow (перекладка в текст), а не стандартный «холст + слой текста» PDF.js. При наложении оригинальные глифы остаются под прозрачным текстом, и перевод получается удвоенным/искажённым - читать такое весело недолго. Чистая перекладка теряет точную раскладку, зато даёт DOM, который браузер переводит идеально - тот же приём, что и в «бесплатном сценарии» настольного приложения.

Эвристики абзацев и заголовков портированы из приложения (internal/pdf): абзац - по вертикальному разрыву и отступу первой строки; заголовок - по центрированию/КАПСУ/краткости; оглавление - из outline PDF.

EPUB не требует эвристики reflow: его содержимое уже семантический XHTML. Работа здесь - распаковать архив, пройти по spine из OPF в порядке чтения, очистить каждую главу (убрать скрипты и стили), переписать картинки на blob:-ссылки, а внутренние ссылки - на внутристраничные якоря, прочитать авторское оглавление (nav.xhtml / toc.ncx) и объединить все главы в один прокручиваемый документ, чтобы переводчик видел всю книгу сразу.

Приватность

Расширение не собирает и не передаёт данные - телеметрии тут просто нет. В хранилище браузера - только твои настройки. В сеть ходит лишь встроенный переводчик браузера, который ты включаешь сам.

Ограничения

Сканы, перехват, блокировщики, лигатуры - честно обо всём
  • Сканы/картинки без текста: переводчику страницы нечего читать (нет текстового слоя). Включите OCR для изображений (или правый клик по картинке), и расширение распознаёт вшитый текст и накладывает его переводимым слоем; без OCR оно определяет пустую страницу и предлагает открыть оригинал.
  • Авто-перехват по URL: по умолчанию выключен - включи «Reflow PDFs & EPUBs» в попапе; тогда он срабатывает для адресов, оканчивающихся на .pdf или .epub. Файлы без такого расширения в адресе (или при выключенном перехвате) открывай через попап («Open file») или правым кликом → Открыть через doc-html-translate.
  • ERR_BLOCKED_BY_CLIENT на странице вьюера: это другой блокировщик контента в твоём профиле режет навигацию по содержимому URL. Используй открытие файла через диалог (путь не попадает в URL) или отключи мешающее расширение.
  • Лигатуры: качество извлечения PDF.js чуть ниже Poppler на нестандартных шрифтах.
  • Стили EPUB: вьюер применяет свой чистый стиль чтения и отбрасывает авторские стили книги - это сделано намеренно, именно так книга переводится чисто.
  • EPUB-ограничения: архивы ZIP64 не поддерживаются; EPUB с DRM прочитать нельзя.

Ссылки

Репозиторий, приложение, документация

What it is and why

Translate PDFs in the browser - no app, no keys

The Doc-HTML-Translate desktop app converts EPUB/PDF/MOBI and more into local HTML. This extension does the same for PDFs and EPUBs right in the browser. For a PDF it extracts the text (via PDF.js, all local) and lays it out as ordinary <p>/<h2> paragraphs and headings; for an EPUB it unpacks the book and combines its chapters into one clean HTML document. Then Chrome's or Edge's built-in "Translate page" works just like on any website.

The point

No API keys, no uploads. Extraction and layout happen on your device; the only network access is the browser's own translator, which you turn on yourself.

Install

One click from the Chrome Web Store, or load unpacked

The easiest way is the Chrome Web Store: open the page and click Add. Works in Chrome and Edge (Chromium). Then jump to "How to use".

Manual install from source (for development or Edge without the store):

  1. Get the extension/ folder from the repository (or a release). When building from source, run npm install && npm run vendor inside it once.
  2. Open chrome://extensions (or edge://extensions), enable Developer mode.
  3. Click Load unpacked and select the extension/ folder.

For auto-intercepting local file:// PDFs, enable "Allow access to file URLs" on the extension's card. Nothing to enable for http(s) PDFs.

How to use

Three ways to open a PDF or EPUB - pick a favourite
Way 1

From the popup

Click the extension icon → Open a PDF or EPUB file.. → on the tab that opens click Open file → pick the file. No toggles, no path in the URL - no ceremony required.

Way 2

Right-click a link

Right-click any document link → Convert with doc-html-translate. Works with no setup - the on-demand path now that auto-interception is off by default.

Way 3

Auto-intercept links

Turn on Reflow PDFs & EPUBs in the popup (off by default) so http(s) .pdf/.epub links redirect to the viewer automatically; for file:// also enable "Allow access to file URLs".

Either way, then: browser menu → "Translate page" → your language.

Tip

The file-picker route is the most robust: the file path never appears in any URL, so URL-based content blockers can't touch it, and no file-access toggle is needed.

Reading features

Toolbar, contents, themes, toggles
  • Toolbar: font size and family, light/sepia/dark theme, jump to page, "Open file" and "Original PDF" (open the untouched PDF in the native viewer; hidden for EPUB, which has no native viewer).
  • Table of contents: built from the PDF outline or the EPUB nav (nav.xhtml / toc.ncx) - a collapsible sidebar with anchors.
  • Language: auto-detected and written to <html lang> so the browser offers the right translation.
  • Toggles: global on/off and per-site disable from the popup; theme and a source-language hint in Options.

How it works & privacy

Reflow, not a canvas; all local

The key decision is reflow - flowing text, not PDF.js's canvas + text-layer overlay. The overlay keeps the original glyphs under transparent text, so native translate produces doubled/garbled output - fun to read for about two seconds. Clean reflow loses the exact layout but yields a DOM the browser translates perfectly - the same trade-off as the desktop app's "free workflow".

Paragraph and heading heuristics are ported from the app (internal/pdf): paragraphs by vertical gap and first-line indent; headings by centering/ALL-CAPS/shortness; the TOC from the PDF outline.

EPUB needs no reflow heuristic - its content is already semantic XHTML. The work is unzipping the archive, following the OPF spine in reading order, sanitizing each chapter (dropping scripts and styles), rewriting its images to blob: URLs and its internal links to in-page anchors, reading the authored TOC (nav.xhtml / toc.ncx), and combining all chapters into one scrollable document so translate sees the whole book at once.

Privacy

The extension collects and transmits nothing - there is no telemetry to speak of. Browser storage holds only your settings. The only network access is the browser's own translator, which you turn on yourself.

Limitations

Scans, interception, blockers, ligatures - the honest list
  • Scanned / image-only PDFs: no text layer for the page translator. Turn on Use OCR for images (or right-click a picture) so the extension recognizes the baked-in text and overlays it as translatable text; without OCR it detects the empty page and offers the original.
  • URL auto-interception: off by default - turn on Reflow PDFs & EPUBs in the popup to enable it; it then fires for addresses ending in .pdf or .epub. Files served without a matching extension in the URL (or with interception off) open via the popup ("Open file") or the right-click Convert with doc-html-translate menu.
  • ERR_BLOCKED_BY_CLIENT on the viewer page: a different content blocker in your profile is blocking the navigation by URL content. Use the file-picker route (path never in the URL) or disable the interfering extension.
  • Ligatures: PDF.js text extraction is slightly weaker than Poppler on non-standard fonts.
  • EPUB styling: the viewer applies its own clean reading CSS and drops the book's author styles - by design, that is what makes it translate cleanly.
  • EPUB limits: ZIP64 archives are unsupported; DRM-protected EPUBs cannot be read.

Links

Repository, app, documentation

Що це і навіщо

Переклад PDF у браузері - без застосунку й без ключів

Настільний застосунок Doc-HTML-Translate конвертує EPUB/PDF/MOBI та інше в локальний HTML. Це розширення робить те саме для PDF та EPUB прямо в браузері. Для PDF воно видобуває текст (через PDF.js, усе локально) і розкладає його звичайними абзацами та заголовками <p>/<h2>; для EPUB - розпаковує книгу та об'єднує її розділи в один чистий HTML-документ. Далі вбудований «Перекласти сторінку» в Chrome чи Edge працює як на будь-якому сайті.

Головне

Жодних API-ключів і завантажень. Видобування та верстка - на твоєму пристрої; у мережу ходить лише вбудований перекладач браузера, який ти вмикаєш сам.

Встановлення

Chrome Web Store в один клік або Load unpacked

Найпростіше - з Chrome Web Store: відкрий сторінку та натисни «Встановити». Підходить для Chrome та Edge (Chromium). Далі - одразу до розділу «Як користуватися».

Ручне встановлення з джерел (для розробки або Edge без магазину):

  1. Візьми теку extension/ з репозиторію (або з релізу). За збірки з джерел один раз виконай npm install && npm run vendor усередині неї.
  2. Відкрий chrome://extensions (або edge://extensions), увімкни Режим розробника.
  3. Натисни Load unpacked і обери теку extension/.

Для авто-перехоплення локальних file:// PDF увімкни в картці розширення «Allow access to file URLs». Для PDF по http(s) вмикати нічого не треба.

Як користуватися

Три способи відкрити PDF або EPUB - обери улюблений
Спосіб 1

З попапа

Клік по іконці розширення → Open a PDF or EPUB file.. → у відкритій вкладці Open file → обери файл. Без тумблерів і без шляху в адресі - без жодних церемоній.

Спосіб 2

Правий клік по посиланню

Правий клік по посиланню на документ → Відкрити через doc-html-translate. Працює без налаштування - основний спосіб на вимогу тепер, коли авто-перехоплення вимкнено типово.

Спосіб 3

Авто-перехоплення посилань

Увімкни «Reflow PDFs & EPUBs» у попапі (типово вимкнено), щоб посилання на .pdf/.epub по http(s) самі перенаправлялися у вьюер; для file:// увімкни ще «Allow access to file URLs».

У будь-якому разі далі: меню браузера → «Перекласти сторінку» → твоя мова.

Порада

Спосіб через вибір файлу найнадійніший: шлях до файлу ніде не з'являється в URL, тож сторонні блокувальники контенту його не чіпають, і не потрібен тумблер доступу до файлів.

Можливості читання

Тулбар, зміст, теми, тумблери
  • Тулбар: розмір і сім'я шрифту, світла/сепія/темна тема, перехід за номером сторінки, кнопки «Open file» та «Original PDF» (відкрити вихідний PDF у нативній читалці; для EPUB прихована - нативної читалки EPUB немає).
  • Зміст: будується із закладок PDF (outline) або з EPUB-навігації (nav.xhtml / toc.ncx) - згортуваний сайдбар з якорями.
  • Мова: визначається автоматично й проставляється в <html lang>, щоб браузер запропонував правильний переклад.
  • Тумблери: глобальний увімк/вимк і вимкнення на конкретному сайті - з попапа; тема й підказка вихідної мови - у налаштуваннях.

Як це працює та приватність

Reflow замість полотна; усе локально

Ключове рішення - reflow (перекладка в текст), а не стандартний «полотно + шар тексту» PDF.js. За накладання оригінальні гліфи лишаються під прозорим текстом, і переклад виходить подвоєним/спотвореним - читати таке весело недовго. Чиста перекладка втрачає точну розкладку, зате дає DOM, який браузер перекладає ідеально - той самий прийом, що й у «безкоштовному сценарії» настільного застосунку.

Евристики абзаців і заголовків портовані із застосунку (internal/pdf): абзац - за вертикальним розривом і відступом першого рядка; заголовок - за центруванням/КАПСОМ/стислістю; зміст - з outline PDF.

EPUB не потребує евристики reflow: його вміст уже семантичний XHTML. Робота тут - розпакувати архів, пройти по spine з OPF у порядку читання, очистити кожен розділ (прибрати скрипти та стилі), переписати картинки на blob:-посилання, а внутрішні посилання - на внутрішньосторінкові якорі, прочитати авторський зміст (nav.xhtml / toc.ncx) і об'єднати всі розділи в один прокручуваний документ, щоб перекладач бачив усю книгу одразу.

Приватність

Розширення не збирає й не передає дані - телеметрії тут просто немає. У сховищі браузера - лише твої налаштування. У мережу ходить тільки вбудований перекладач браузера, який ти вмикаєш сам.

Обмеження

Скани, перехоплення, блокувальники, лігатури - чесно про все
  • Скани/картинки без тексту: перекладачу сторінки нічого читати (немає текстового шару). Увімкніть OCR для зображень (або правий клік по зображенню), і розширення розпізнає вшитий текст і накладає його перекладним шаром; без OCR воно визначає порожню сторінку й пропонує відкрити оригінал.
  • Авто-перехоплення за URL: типово вимкнено - увімкни «Reflow PDFs & EPUBs» у попапі; тоді воно спрацьовує для адрес, що закінчуються на .pdf або .epub. Файли без відповідного розширення в адресі (або з вимкненим перехопленням) відкривай через попап («Open file») або правим кліком → Відкрити через doc-html-translate.
  • ERR_BLOCKED_BY_CLIENT на сторінці вьюера: інший блокувальник контенту у твоєму профілі ріже навігацію за вмістом URL. Використовуй відкриття файлу через діалог (шлях не потрапляє в URL) або вимкни розширення, що заважає.
  • Лігатури: якість видобування PDF.js трохи нижча за Poppler на нестандартних шрифтах.
  • Стилі EPUB: вьюер застосовує власний чистий стиль читання й відкидає авторські стилі книги - це зроблено навмисно, саме так книга перекладається чисто.
  • Обмеження EPUB: архіви ZIP64 не підтримуються; EPUB із DRM прочитати не можна.

Посилання

Репозиторій, застосунок, документація