ngx-extended-pdf-viewer

Бесплатно
Открытый исходный код

Сайт: pdfviewer.net

ngx-extended-pdf-viewer — это компонент для фреймворка Angular, предназначенный для встраивания полнофункционального PDF‑просмотрщика в веб-приложения. Компонент реализует клиентскую визуализацию PDF-документов на основе движков для отображения PDF в браузере и предоставляет набор интерфейсных элементов для управления отображением, навигацией и базовыми взаимодействиями с документом. Его архитектура соответствует подходам Angular и позволяет интегрировать просмотрщик как часть модульной системы приложения.

Изначально проект развивался как обёртка над механизмами рендеринга PDF в браузере, с целью упростить интеграцию типичных функций просмотра в одностраничные приложения. В результате компонент сочетает в себе средства для загрузки документов, панель инструментов с элементами управления, функционал поиска по тексту, возможности масштабирования и смены режима просмотра, а также поддержку аннотаций и экспорта. Компонент ориентирован на использование в задачах корпоративных и пользовательских интерфейсов, где требуется показать PDF без перехода на внешние сервисы.

  • Отображение PDF: рендеринг страниц документа в окне просмотра с поддержкой постраничного и бесшовного режимов.
  • Панель инструментов: встроенные элементы управления навигацией по страницам, изменением масштаба, поворотом страниц и переключением режимов отображения.
  • Поиск по тексту: поиск внутри документа с подсветкой совпадений и навигацией между результатами.
  • Аннотации: создание и отображение простых аннотаций, комментариев и выделений в пределах поддерживаемого функционала.
  • Загрузка и сохранение: возможность загружать PDF из URL или буфера, а также экспортировать/скачивать документ или отдельные страницы.
  • Настройки интерфейса: конфигурируемая видимость элементов панели, локализация и адаптация под стили приложения.
  • Производительность: ленивый рендеринг страниц, оптимизация работы с большими документами и поддержка аппаратного ускорения там, где это возможно.
  • Интеграция с Angular: реализация как компонент/директива, поддержка привязки свойств, событий и управления через API компонента.
  • Совместимость браузеров: работа в современных браузерах с учётом ограничений платформы и обеспечения отказоустойчивости при отсутствии некоторых возможностей.
  • Безопасность: изоляция загрузки и отображения контента в клиентской части, возможности управления источниками данных и политиками загрузки.
Подробнее