Core Components
- TPdf - Main PDF document handling component for opening, navigating, extracting text, and editing PDF documents
- TPdfView - Visual component for displaying and interacting with PDF pages
Document Operations
- Document Loading - Load PDF files from disk, memory streams, or byte arrays
- Password Protection - Support for password-protected PDF documents
- Document Creation - Create new PDF documents programmatically
- Document Saving - Save modified documents with various options (incremental, remove security)
- Stream Compression - Automatic FlateDecode compression ensures all PDF streams are optimally compressed when saving
- Document Merging - Import pages from other PDF documents
- Page Management - Add, delete, and manipulate individual pages
Text Operations
- Text Extraction - Extract text from PDF pages with character-level precision
- Text Search - Find text with case-sensitive, whole word, and consecutive search options
- Character Properties - Access font size, weight, angle, and positioning for individual characters
- Text Addition - Add new text to PDF pages with custom fonts, colors, transparency, and rotation
- Font Information - Retrieve font properties including family name, embedding status, and raw font data
Annotation Support
- Annotation Types - Support for text, link, highlight, underline, strikeout, and many other annotation types
- Annotation Creation - Create new annotations programmatically
- Annotation Editing - Modify existing annotation properties including color, transparency, and content
- Link Annotations - Handle internal and external links with action support
Form Support
- Form Types - Support for AcroForm and XFA forms
- Form Fill - Interactive form filling with JavaScript support
- Field Access - Read and write form field values by index or position
- Field Information - Access field type, flags, name, and other properties
- Form Flattening -
GenerateFormAppearancesregenerates the /AP appearance stream for every form widget on every page, andFlattenPage/FlattenAllPagesbake annotations and form fields into static page content (non-editable)
Image Operations
- Image Extraction - Extract images from PDF pages
- JPEG Insertion - Add JPEG images to PDF pages
- Picture Support - Add TPicture objects with automatic format conversion
- Thumbnail Generation - Generate page thumbnail bitmaps
Drawing Operations
- Path Drawing - Create paths with lines, Bezier curves, and closed shapes
- Fill and Stroke - Configure fill mode, colors, transparency, and stroke properties
- Blend Modes - Support for various PDF blend modes
- Line Styles - Configure line cap, line join, and stroke width
Digital Signatures
- Signature Detection - Detect and enumerate digital signatures in PDF documents
- Signature Information - Access signature contents, byte range, sub-filter, reason, and time
- MDP Permissions - Query document modification detection and prevention permissions
Attachment Support
- Attachment Access - Read, create, modify, and delete embedded file attachments
- Attachment Names - Access attachment filenames
Navigation
- Bookmarks - Navigate document bookmarks with hierarchical support
- Named Destinations - Access named destinations by index or name
- Page Labels - Retrieve page labels for each page
- Web Links - Detect and navigate web links on pages
- Link Annotations - Access link annotations with action and destination information
Rendering
- High-Quality Rendering - Render pages to device context, bitmap, or tile
- Render Options - LCD text optimization, annotations, grayscale, printing mode
- Page Rotation - Support for 0, 90, 180, and 270 degree rotation
- Transparency Detection - Detect transparent content on pages
Viewing (TPdfView)
- Display Modes - Single page continuous and double page continuous
- Zoom Control - Variable zoom with page-fit and actual-size calculations
- Coordinate Mapping - Convert between device and page coordinates
- Text Selection - Paint text selection highlights
- Mouse & Keyboard - Full input device support with drag scrolling
- Form Interaction - Interactive form editing within the viewer
Compression
- Automatic Compression - When the
Compressedproperty is True (default), all PDF streams are ensured to be FlateDecode compressed when saving- Post-Processing - The compression engine scans saved PDF data and compresses any uncompressed streams using zlib maximum compression
- Cross-Reference Rebuild - Automatically rebuilds the xref table when stream compression changes byte offsets
- Zero Overhead - If all streams are already compressed, the data passes through without modification
Security
- Password Support - Open password-protected PDF documents
- Permissions - Read document and user permissions
- Security Removal - Save documents with security removed (when authorized)
Platform Support
- Delphi - Delphi XE2 (RAD Studio XE2) through Delphi 13.1 Florence (RAD Studio 13.1)
- C++Builder - C++Builder XE2 (RAD Studio XE2) through C++Builder 13.1 Florence
- Lazarus - Free Pascal / Lazarus support
- Win32 / Win64 - Both 32-bit and 64-bit Windows platforms