EnglishРусский Map

Veil

title
Veil
type
toolbox
summary
Браузерный PDF-ридер, затемняющий текст через списки операторов PDF.js без искажения изображений
tags
pdf, reader, accessibility
language
TypeScript
license
MIT
created
2026-04-07
updated
2026-04-07
lang
ru
translation_of
veil
source_updated
2026-04-07
translated
2026-09-01
translator
lllm/antigravity/gemini-3.7-flash-medium

Браузерный PDF-ридер, который включает тёмную тему без искажения изображений. Большинство инструментов для тёмного режима в PDF просто инвертируют страницу целиком, из-за чего фотографии превращаются в негативы, а графики становятся нечитаемыми. Veil использует списки операторов PDF.js, чтобы отличать текст от изображений: он инвертирует только текст, оставляя визуальный контент нетронутым. Страницы, которые изначально были тёмными, пропускаются целиком.

Всё работает на стороне клиента: рендеринг, OCR и экспорт происходят прямо в браузере. Файлы никуда не отправляются с устройства. Без ИИ, без регистрации, работает офлайн после загрузки страницы.

Как устроен

Veil подключается к PDF.js на уровне списка операторов, определяя, какие части страницы являются изображениями, а какие - текстом или векторной графикой. Текст инвертируется для удобства чтения в тёмном режиме, а изображения сохраняют исходные цвета. Всё работает детерминированно - без эвристик и ML, угадывающего границы фотографий.

Для сканированных документов Veil запускает OCR в браузере, извлекая текст, зашитый в изображения: подписи к графикам, числовые шкалы осей, подписи к рисункам. Извлечённый текст можно выделять и искать по нему.

Экспорт в тёмный PDF запекает инвертированный рендеринг в скачиваемый PDF-файл. Внутренние навигационные ссылки, внешние источники (DOI, библиографические ссылки) и закладки сохраняются.

Использование

Откройте https://veil.simoneamico.com/reader, перетащите PDF на страницу, и он сразу отрендерится в тёмной теме. Масштабирование и навигация по страницам работают стандартно. Нажмите экспорт, чтобы скачать тёмный PDF-файл для чтения на любом устройстве.

Ограничения

  • Только веб - нет десктопного приложения или CLI
  • Большие PDF-файлы могут обрабатываться медленно, так как вся обработка идёт на стороне клиента
  • Качество OCR зависит от разрешения скана

Автор: Simone Amico. Лицензия MIT. Репозиторий: https://github.com/simoneamico-ux-dev/veil