PDFium — это свободная библиотека для обработки и рендеринга PDF-документов, являющаяся основой встроенного просмотрщика PDF в браузере Chromium и Google Chrome. Изначально проект был основан на решении компании Foxit и позже интегрирован в экосистему Chromium, с тем чтобы обеспечить высокоэффективное отображение PDF внутри браузера на разных платформах. Библиотека распространяется под лицензией BSD с тремя пунктами и может быть встроена в сторонние приложения.
PDFium умеет читать и анализировать структуры PDF, интерпретировать содержимое (текст, шрифты, изображения, аннотации и формы), преобразовывать страницы в растровые изображения (битмапы) и выполнять операции извлечения текста или элементов. Она используется как ядро рендеринга PDF в браузерах, а также адаптируется в различных программных компонентах и обёртках для работы на десктопе, мобильных платформах и в виде WebAssembly.
- Рендеринг страниц PDF в двумерные растровые изображения с высокой точностью и управлением качеством
- Парсинг внутренней структуры PDF: объекты, потоки, шрифты, ресурсы, страницы, аннотации
- Извлечение текста, букв и геометрических примитивов (линии, кривые) из документа
- Работа с акробатическими формами (AcroForms), аннотациями и интерактивными элементами
- Поддержка шифрования/дешифрования PDF и защиты паролем
- Открытие документов с произвольным доступом к данным (например через пользовательский доступ к потоку данных)
- Поддержка нескольких backend’ов рендеринга (например, Skia или AGG) там, где это применимо
- Возможность компиляции в WebAssembly для работы в средах браузера вне Chromium
- Интеграция в сторонние языки и обёртки через C API или обёртки для C++ / других языков
- Обработка приложений безопасности и уязвимостей в контексте сложных вложений в PDF (например изображений форматов JPEG2000, потенциальных переполнений буфера)