PDFiumPas — це комплексна компонентна бібліотека професійного рівня, яка приносить потужні можливості обробки та перегляду PDF у програми Delphi і C++Builder. Побудована на надійному рушії рендерингу Google PDFium, вона надає розробникам повне рішення для інтеграції PDF-функціональності у настільні програми
Бібліотека складається з двох основних компонентів, які безшовно працюють разом: TPdf для обробки та редагування документів і TPdfView для інтерактивного візуального подання. Якщо вам потрібно створити простий переглядач PDF, складну систему керування документами або інтегрувати можливості PDF у наявні програми, PDFiumPas надає потрібні інструменти та гнучкість
Серце системи обробки PDF, TPdf виконує всі операції на рівні документа, включно із завантаженням, збереженням, вилученням тексту, обробкою форм і керуванням метаданими
Вишуканий візуальний елемент керування, який забезпечує насичений перегляд PDF із повними можливостями взаємодії користувача
TStream на вимогу через LoadCustomDocumentSaveAsPdfA / SaveAsPdfAToStream із вбудованим профілем sRGB ICC та підтримкою власних профілівValidatePdfA і властивість лише для читання PdfAConformanceImportPagesByIndex (імпорт підмножини), ImportNPagesToOne (сітка N-up), MovePages (впорядкування на місці)CreateXObjectFromPage і InsertFormObjectFromXObjectRenderPageProgressive і IPdfCancellationTokenFitMode визначає, як сторінка розміщується у вікні перегляду (ручний масштаб, фактичний розмір, умістити сторінку, умістити ширину); автоматично застосовується повторно під час Resize / зміни сторінкиPageColor відокремлює фон відрендереної PDF-сторінки від Color самого елемента керування для переглядачів у темному режиміHighlightSearchText і ClearHighlightPageShadowSize / PageShadowColor) і межа сторінки (PageBorderColor)LinkOptions) і подіями OnAnnotationLinkClick / OnWebLinkClickAllowUserPageChange, ChangePageOnMouseScrolling, AllowUserTextSelection) для кіосків і вбудувань лише для читанняTPdfThumbnailView| Аспект | Подробиці |
|---|---|
| Механізм рендерингу | Google PDFium - галузевий, перевірений у бою PDF-рушій |
| Підтримка PDF | Версії PDF від 1.0 до 1.7, зашифровані файли та файли, захищені паролем |
| Сумісність платформ | 32-розрядні та 64-розрядні програми Windows |
| Підтримка IDE | Delphi XE5 / C++Builder XE5 (RAD Studio XE5) до Delphi/C++Builder 13.1 Florence (RAD Studio 13.1), Lazarus 3.8+ |
| Кодування символів | Повна підтримка Unicode, багатомовна обробка тексту |
| Керування пам'яттю | Оптимізовано для великих документів, ефективне використання ресурсів |
| Потокобезпека | Однопотокова архітектура (відповідно до вимог PDFium) |
PDFiumPas дотримується багаторівневої архітектурної схеми, яка чітко розділяє відповідальність і максимально підвищує повторне використання коду
| Шар | Файли | Відповідальність |
|---|---|---|
| Компоненти VCL | PDFium.pas, FPdfThumbnail.pas | Компоненти Delphi VCL (TPdf, TPdfView, TPdfThumbnailView) з підтримкою часу проєктування |
| Прив'язки API | FPdfView.pas, FPdfDoc.pas, FPdfText.pas, FPdfEdit.pas, FPdfAnnot.pas, FPdfFormFill.pas, FPdfPageOps.pas, FPdfAttachment.pas, FPdfSignature.pas, FPdfStructTree.pas, FPdfDataAvail.pas, FPdfExtensions.pas, FPdfFWLПодія.pas, FPdfCompress.pas, FPdfUtils.pas | Оголошення покажчиків на функції для викликів DLL PDFium |
| Конвеєр PDF/A | FPdfPdfa.pas | Створення PDF/A-1b (вбудовування XMP, sRGB ICC OutputIntent, оновлення каталогу) і перевірка (визначення відповідності, перелік проблем) |
| Асинхронна інфраструктура | FPdfAsync.pas | IPdfCancellationToken / IPdfCancellationTokenSource, синглтон PdfNoCancellationToken і допоміжний TPdfFuture<T> для тривалого рендерингу та експорту |
| Помічники з геометрії | FPdfMatrix.pas | ОО-обгортка навколо FS_MATRIX з допоміжними методами Translate, Scale, Rotate, Flip, Skew і Multiply |
| Операції зі сторінками | FPdfPageOps.pas | Обгортки для FPDF_ImportPagesByIndex, FPDF_ImportNPagesToOne, FPDF_MovePages, а також допоміжні засоби Form-XObject (CreateXObjectFromPage / InsertFormObjectFromXObject) |
| Бічна панель мініатюр | FPdfThumbnail.pas | TPdfThumbnailView — прокручувана панель ескізів для кожної сторінки з навігацією через наведення, виділення та OnPageClick |
| Нативний рушій | DLLs\Win32|Win64\pdfium.dll та pdfium.v8.dll | Нативний рушій рендерингу Google PDFium з необов’язковими збірками з увімкненим V8 |
PDFiumPas створено для негайної продуктивної роботи. Бібліотека компонентів містить:
Незалежно від того, чи ви створюєте простий переглядач PDF, чи складну систему обробки документів, PDFiumPas надає основу для професійної PDF-функціональності у ваших програмах Delphi і C++Builder