| Method | Description |
CreateDocument | Create a new empty PDF document |
LoadDocument(Data: TMemoryStream; Buffered: Boolean = True) | Load PDF document from memory stream |
LoadDocument(Data: Pointer; Size: Integer; Buffered: Boolean = True) | Load PDF document from memory buffer |
LoadDocument | Load PDF document from FileName |
LoadDocument(const Data: TBytes; Buffered: Boolean = True) | Load PDF document from TBytes |
LoadCustomDocument(AStream: TStream; AOwnsStream: Boolean = False) | Stream a PDF document from any TStream via FPDF_LoadCustomDocument; PDFium pulls blocks on demand instead of copying the entire file into memory. AOwnsStream = True transfers stream lifetime to the TPdf instance. |
SaveAs(Stream: TStream; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean | Save document to stream. When Compressed is True, ensures all streams are FlateDecode compressed. Explicit pv13 through pv17 targets are normalized and validated, including existing catalog /Version overrides in incremental output; incompatible newer PDF features raise EPdfError. Saved files without an existing OpenAction open on the first page with Fit Height zoom when the target version supports it. Trial builds apply the trial watermark during save. |
SaveAs(const FileName: string; Option: TSaveOption = saNone; PdfVersion: TPdfVersion = pvUnknown): Boolean | Save document to file. Explicit pv13 through pv17 targets are normalized and validated, including existing catalog /Version overrides in incremental output; incompatible newer PDF features raise EPdfError. Saved files without an existing OpenAction open on the first page with Fit Height zoom when the target version supports it. Trial builds apply the trial watermark during save. |
ImportPages(Pdf: TPdf; const Range: string; PageNumber: Integer = 1): Boolean | Import pages from another PDF document. Range format: '1,3,5-7' |
ImportPreferences(Pdf: TPdf): Boolean | Import viewer preferences from another PDF |
| Method | Description |
AddPage(PageNumber: Integer; Width, Height: Double) | Add a new page at the specified one-based position with given dimensions (in points, 72 points = 1 inch). Passing 0 is accepted as a compatibility alias for inserting the first page, and the inserted page becomes current. |
DeletePage(PageNumber: Integer) | Delete page at specified index |
GetPageBox(Box: TPdfPageBox): TPdfRectangle | Read the selected page dictionary box from the current page |
RemoveObject(Index: Integer; DestroyObject: Boolean = True) | Remove a page object from the current page and regenerate page content |
ReloadPage | Reload the current page |
SetPageBox(Box: TPdfPageBox; const Rectangle: TPdfRectangle) | Set the selected page dictionary box on the current page |
UpdatePage | Apply pending changes to the current page (calls FPDFPage_GenerateContent) |
| Method | Description |
Text(StartIndex: Integer = 0; Count: Integer = MaxInt): WString | Extract text from current page |
TextInRectangle(Left, Top, Right, Bottom: Double): WString | Extract text from rectangular area (page coordinates) |
TextInRectangle(Rectangle: TPdfRectangle): WString | Extract text from rectangle |
AddText(const Text, Font: WString; FontSize: Single; X, Y: Double; Color: TColor = clBlack; Alpha: Byte = $FF; Angle: Double = 0.0) | Add text at specified position with font, color, transparency, and rotation angle |
SetText(ObjectIndex: Integer; const Text: WString) | Set text for an existing text object (undocumented PDFium API, may cause formatting issues) |
SetTextPositions(ObjectIndex: Integer; const Positions: TPdfSingleArray) | Set per-character positions for an existing text object. Positions start with the second character and are relative to the text object origin. |
FindFirst(const Text: WString; Options: TSearchOptions = []; StartIndex: Integer = 0; DirectionUp: Boolean = True): Integer | Start text search, returns character index or -1 if not found |
FindNext: Integer | Continue text search forward, returns character index or -1 |
FindPrevious: Integer | Continue text search backward, returns character index or -1 |
CharacterIndexAtPos(X, Y, ToleranceX, ToleranceY: Double): Integer | Get character index at page position |
RectangleCount(StartIndex: Integer = 0; Count: Integer = MaxInt): Integer | Get the number of text rectangles for a character range |
| Method | Description |
GenerateFormAppearances | Regenerates /AP appearance streams for every form widget on every page (FPDF_FFLDraw). Call after FormField[] assignments and before SaveAs / FlattenPage / FlattenAllPages. |
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): Integer | Flatten annotations and form widgets on the current page into static content. Returns FLATTEN_SUCCESS, FLATTEN_NOTHINGTODO, or FLATTEN_FAIL. |
FlattenAllPages(nFlag: Integer = FLAT_NORMALDISPLAY): Boolean | Flatten every page in the document. Returns True when all pages succeed. |
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags) | Set AcroForm field flags for the form field at the specified annotation index on the current page. |
SetFormFieldFlagsAt(X, Y: Single; const Flags: TPdfFormFieldFlags) | Set AcroForm field flags for the form field at the specified page coordinates. |
| Method | Description |
AddJpegImage(JpegImage: TStream; X, Y, Width, Height: Double): Boolean | Add JPEG image from stream at specified position and size |
AddPicture(Picture: TPicture; X, Y: Double) | Add picture at position (original size) |
AddPicture(Picture: TPicture; X, Y, Width, Height: Double) | Add picture at position with specified size |
AddImage(const FileName: string; X, Y, Width, Height: Double) | Direct image-file insertion (delegates to AddPicture through a temporary TPicture); accepts any image format registered with the VCL or LCL graphics units |
AddImage(Bitmap: TBitmap; X, Y, Width, Height: Double) | Insert a pf32bit TBitmap directly without the TPicture intermediary; raises EPdfError on nil bitmap |
| Method | Description |
CreatePath(X, Y: Single; FillMode; FillColor; FillAlpha; Stroke; StrokeColor; StrokeAlpha; StrokeWidth; LineCap; LineJoin; BlendMode) | Create a path starting at position (X, Y) |
CreatePath(X, Y, Width, Height: Single; ...) | Create a rectangular path with given bounds |
MoveTo(X, Y: Single) | Move the current point to (X, Y) |
LineTo(X, Y: Single) | Draw a line from the current point to (X, Y) |
BezierTo(X1, Y1, X2, Y2, X3, Y3: Single) | Draw a Bezier curve with two control points and an endpoint |
ClosePath | Close the current subpath |
AddPath | Add the completed path to the current page |
| Method | Description |
RenderPage(DeviceContext: HDC; Left, Top, Width, Height: Integer; Rotation; Options) | Render page to a device context (HDC) |
RenderPage(Left, Top, Width, Height: Integer; Rotation; Options; Color): TBitmap | Render page to a new bitmap |
RenderPage(Bitmap: TBitmap; Left, Top, Width, Height: Integer; Rotation; Options; Color) | Render page to an existing bitmap |
RenderTile(Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...): TBitmap | Render a tile (portion) of a page to a new bitmap |
RenderTile(Bitmap: TBitmap; Left, Top, Width, Height, PageWidth, PageHeight: Integer; ...) | Render a tile to an existing bitmap |
| Property | Type | R/W | Description |
Author | WString | R | Document author |
Compressed | Boolean | R/W | When True (default), SaveAs post-processes the output to ensure all streams are FlateDecode compressed |
CreationDate | WString | R | Document creation date metadata |
Creator | WString | R | Application that created the document |
Document | FPDF_DOCUMENT | R | Low-level PDFium document handle |
FileIdentifier[IDType: TPdfFileIdentifierType] | TBytes | R | Permanent or changing trailer file identifier bytes without the PDFium terminator byte |
FormType | TPdfFormType | R | Form type: ftNone, ftAcroForm, ftXFAFull, ftXFAForeground |
IsTagged | Boolean | R | True if document is a tagged PDF |
JavaScriptAction[Index] | TPdfJavaScriptAction | R | Document-level JavaScript name-tree action by zero-based index |
JavaScriptActionCount | Integer | R | Number of document-level JavaScript name-tree actions |
JavaScriptActions | TPdfJavaScriptActions | R | All document-level JavaScript name-tree actions |
Keywords | WString | R | Document keywords |
Language | WString | R/W | Document catalog language (/Lang) |
StructureElements | TPdfStructureElements | R | Flattened logical structure elements for the current page |
MetaText[const Tag: string] | WString | R | Arbitrary metadata value by tag name |
ModifiedDate | WString | R | Last modification date metadata |
PageCount | Integer | R | Total number of pages |
PdfVersion | TPdfVersion | R | Effective PDF version, including a valid catalog /Version override when present |
Permissions | LongWord | R | Document permissions flags |
PrintCopies | Integer | R | Number of print copies specified |
PrintPageRanges | TPdfPrintPageRanges | R | One-based print page ranges from viewer preferences |
PrintPaperHandling | TPrintPaperHandling | R | Paper handling preference |
PrintScaling | Boolean | R | Whether print scaling is enabled |
Producer | WString | R | PDF producer application |
Subject | WString | R | Document subject |
Title | WString | R | Document title |
UserPermissions | LongWord | R | User-level permissions |
ViewerPreference[const Key: string] | WString | R | Viewer preference value by key |
XFA | Boolean | R | True if document contains XFA forms |
| Property | Type | R/W | Description |
Page | FPDF_PAGE | R | Low-level PDFium page handle |
PageBounds | TPdfRectangle | R | Bounding rectangle of the current page |
PageBox[Box: TPdfPageBox] | TPdfRectangle | R/W | MediaBox, CropBox, BleedBox, TrimBox, or ArtBox for the current page |
PageHeight | Double | R | Height of current page in points |
PageLabel[PageNumber: Integer] | WString | R | Page label for a given page number |
PageMode | TPageMode | R | How the document should be displayed when opened |
PageRotation | TRotation | R/W | Rotation of the current page (ro0, ro90, ro180, ro270) |
PageWidth | Double | R | Width of current page in points |
Thumbnail | TBitmap | R | Thumbnail bitmap of the current page |
Transparent | Boolean | R | True if the current page contains transparent content |
| Property | Type | Description |
Character[Index] | WideChar | Unicode character at index |
CharacterAngle[Index] | Single | Character rotation angle in radians |
CharacterCount | Integer | Number of characters on current page |
CharacterFontSize[Index] | Double | Font size of character at index; FontSize[Index] remains as a compatible alias |
CharacterFontWeight[Index] | Integer | Font weight of character at index |
CharacterGenerated[Index] | Boolean | True if character was generated (not from original content) |
CharacterIsHyphen[Index] | Boolean | True if character is a hyphen |
CharacterMapError[Index] | Boolean | True if character has a mapping error |
CharacterOrigin[Index] | TPdfPoint | Origin point of the character |
CharacterRectangle[Index] | TPdfRectangle | Bounding rectangle of the character |
Charcode[Index] | WideChar | Character code at index |
Find | FPDF_SCHHANDLE | Low-level PDFium search handle |
Rectangle[Index] | TPdfRectangle | Text rectangle from last RectangleCount call |
TextPage | FPDF_TEXTPAGE | Low-level PDFium text page handle |
| Property | Type | Description |
FontAscent[Index; FontSize] | Single | Ascent of the font used by the text object at index |
FontBaseName[Index] | WString | Base font name for the text object at index |
FontData[Index] | TBytes | Raw font data for the text object at index |
FontDescent[Index; FontSize] | Single | Descent of the font used by the text object at index |
FontFamilyName[Index] | WString | Font family name for the text object at index |
FontHandle[Index] | FPDF_FONT | Low-level PDFium font handle for the text object at index |
FontIsEmbedded[Index] | Boolean | True if the text object's font is embedded in the PDF |
FontItalicAngle[Index] | Integer | Italic angle of the text object's font |
FontSize[Index] | Double | Backward-compatible alias for CharacterFontSize[Index] |
FontWeight[Index] | Integer | Font weight of the text object's font (e.g., 400 = normal, 700 = bold) |
| Property | Type | R/W | Description |
FormField[Index] | WString | R/W | Form field value by index |
FormFieldAt[X, Y: Single] | WString | R/W | Form field value at page position |
FormFieldCount | Integer | R | Number of form fields on current page |
FormFieldInfo[Index] | TPdfFormFieldInfo | R | Form field information by index |
FormFieldInfoAt[X, Y: Single] | TPdfFormFieldInfo | R | Form field information at page position |
FormHandle | FPDF_FORMHANDLE | R | Low-level form fill handle |
HasFormFieldAt[X, Y: Single] | Boolean | R | True if a form field exists at the position |
| Property | Type | Description |
Bookmark[const Title: WString] | TBookmark | Find bookmark by title |
BookmarkChildren[const Bookmark: TBookmark] | TBookmarks | Child bookmarks of a bookmark |
BookmarkFrom[Handle: FPDF_BOOKMARK] | TBookmark | Bookmark data from a handle |
Bookmarks | TBookmarks | Top-level bookmarks array |
Destination[Index] | TDestination | Named destination by index |
DestinationByName[const Name: WString] | TDestination | Named destination by name |
DestinationCount | Integer | Number of named destinations |
HasBookmarkChildren[const Bookmark: TBookmark] | Boolean | True if bookmark has children |
LinkAnnotation[PageNumber, Index] | TLinkAnnotation | Link annotation on a given page |
LinkAnnotationCount[PageNumber] | Integer | Number of link annotations on a page |
WebLink[PageNumber, Index] | TWebLink | Web link (URL) on a given page |
WebLinkCount[PageNumber] | Integer | Number of web links on a page |
TPdfView is a scrollable visual control for displaying and interacting with PDF documents. It requires a Pdf: TPdf reference.
| Property | Type | Default | Description |
About | string | | Component version information |
Active | Boolean | False | Activate/deactivate the viewer |
CurrentCharIndex | Integer | 0 | Application-selected character index retained for compatibility |
DisplayMode | TPdfDisplayMode | dmSingleContinuous | Page display mode (dmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover) |
Options | TRenderOptions | [reLcd] | Rendering options (LCD text, annotations, grayscale, etc.) |
PageShadowSize | Integer | 0 | Optional drop-shadow size in pixels; negative values clamp to 0 |
PageShadowColor | TColor | clGray | Drop-shadow fill color used when PageShadowSize > 0 |
PageBorderColor | TColor | clBlack | One-pixel page border color |
SmoothScroll | Boolean | False | Animates line/page scrollbar commands in timer-driven segments; thumb tracking remains immediate |
LinkOptions | TPdfViewLinkOptions | [loAutoGoto, loAutoOpenURI] | Controls automatic goto, URI, launch, and embedded-goto behavior after link click events |
AsyncRendering | Boolean | False | Shows the loading overlay when enabled; the application still owns worker dispatch |
LoadingText | string | Loading... | Text drawn in the AsyncRendering overlay; empty string suppresses the overlay |
LoadingColor | TColor | clYellow | Background color for the AsyncRendering overlay |
PageNumber | Integer | 1 | Current page number (1-based) |
Pdf | TPdf | nil | Reference to the TPdf component |
Rotation | TRotation | ro0 | Display rotation (ro0, ro90, ro180, ro270) |
Zoom | Double | 1.0 | Zoom level (1.0 = 100%) |
| Property | Type | Description |
ActualSizeZoom[PageNumber] | Double | Zoom value to display the page at its actual size |
Canvas | TCanvas | Canvas for custom drawing on the viewer |
CharacterAngle[Index] | Single | Character rotation angle in radians |
CharacterCount | Integer | Number of characters on the current viewer page |
CharacterFontSize[Index] | Double | Font size of character at index; FontSize[Index] remains as a compatible alias |
CharacterFontWeight[Index] | Integer | Font weight of character at index |
CharacterOrigin[Index] | TPoint | Character origin in viewer device coordinates |
CharacterRectangle[Index] | TRect | Character bounds in viewer device coordinates |
FontAscent[Index; FontSize] | Single | Ascent of the font used by the text object at index |
FontBaseName[Index] | WString | Base font name for the text object at index |
FontData[Index] | TBytes | Raw font data for the text object at index |
FontDescent[Index; FontSize] | Single | Descent of the font used by the text object at index |
FontFamilyName[Index] | WString | Font family name for the text object at index |
FontHandle[Index] | FPDF_FONT | Low-level PDFium font handle for the text object at index |
FontIsEmbedded[Index] | Boolean | True if the text object's font is embedded in the PDF |
FontItalicAngle[Index] | Integer | Italic angle of the text object's font |
FontWeight[Index] | Integer | Font weight of the text object's font |
PageHeightZoom[PageNumber] | Double | Zoom value to fit the page height in the viewer |
PageWidthZoom[PageNumber] | Double | Zoom value to fit the page width in the viewer |
PageZoom[PageNumber] | Double | Zoom value to fit the entire page in the viewer |
StructureElements | TPdfStructureElements | Flattened logical structure elements for the current viewer page |
WindowHandle | HWND | Window handle of the viewer control |
| Method | Description |
CharacterIndexAtPos(X, Y: Integer; ToleranceX, ToleranceY: Double): Integer | Resolve the character near a viewer device-coordinate point; returns -1 when no character is nearby |
DeviceToPage(X, Y: Integer; out PageX, PageY: Double): Boolean | Convert viewer device coordinates to page coordinates |
DeviceToPage(X, Y: Integer; var PageNumber: Integer; var PageX, PageY: Double): Boolean | Convert viewer device coordinates to page coordinates with page detection |
DeviceToPage(Rectangle: TRect): TPdfRectangle | Convert a viewer device rectangle to a page rectangle |
PageToDevice(PageX, PageY: Double; out X, Y: Integer): Boolean | Convert page coordinates to viewer device coordinates |
PageToDevice(Rectangle: TPdfRectangle): TRect | Convert a page rectangle to a viewer device rectangle |
LinkAnnotationAtPos(X, Y: Integer): Integer | Get link annotation index at screen position |
LinkAnnotationAtPos(X, Y: Integer; out PageNumber: Integer): Integer | Get link annotation index with page number |
WebLinkAtPos(X, Y: Integer): Integer | Get web link index at screen position |
WebLinkAtPos(X, Y: Integer; out PageNumber: Integer): Integer | Get web link index with page number |
PaintSelection(SelectionStart, SelectionEnd: Integer; Mask: TColor) | Paint text selection highlight |
RemoveObject(Index: Integer; DestroyObject: Boolean = True) | Remove a page object from the current page, regenerate page content, and repaint the viewer |
GenerateFormAppearances | Regenerates /AP appearance streams via the associated TPdf component (see TPdf.GenerateFormAppearances) |
FlattenPage(nFlag: Integer = FLAT_NORMALDISPLAY): Integer | Flatten annotations and form widgets on the current page into static content |
SetFormFieldFlags(Index: Integer; const Flags: TPdfFormFieldFlags) | Set AcroForm field flags by current-page annotation index |
SetFormFieldFlagsAt(X, Y: Integer; const Flags: TPdfFormFieldFlags) | Set AcroForm field flags at viewer control coordinates |
TPdfThumbnailView is a scrollable side-panel control from the FPdfThumbnail unit. It links to a TPdf component and renders one page thumbnail per row for page navigation.
| Type | Definition |
WString | Wide string type for Unicode text |
TPdfIntegerArray | Dynamic array of Integer values |
TPdfSingleArray | Dynamic array of Single values used for text object character positions |
TPdfPrintPageRange | Record: StartPage, EndPage: Integer |
TPdfPrintPageRanges | Dynamic array of one-based print page ranges |
TPdfPoint | Record: X, Y: Double |
TPdfRectangle | Record: Left, Top, Right, Bottom: Double |
TPdfFileIdentifierType | fidPermanent, fidChanging |
TPdfPageBox | pbMedia, pbCrop, pbBleed, pbTrim, pbArt |
TPdfJavaScriptAction | Record: Name, Script: WString |
TPdfJavaScriptActions | Dynamic array of TPdfJavaScriptAction records |
TPdfVersion | pvUnknown, pv10, pv11, pv12, pv13, pv14, pv15, pv16, pv17. Explicit SaveAs targets from pv13 through pv17 are normalized and validated against the selected PDF version: the saved file is rejected if it carries dictionary entries, filter names, annotation subtypes, action types, fonts, color spaces, or encryption parameters introduced after the chosen version (for example JBIG2Decode, MarkInfo, Polygon/PolyLine/Caret/Screen/Watermark/Redact annotations, AES/AES-256 encryption, Tagged PDF, OutputIntents, or Portable Collection are blocked when the target is too old). |
TRotation | ro0, ro90, ro180, ro270 |
TSaveOption | saNone, saIncremental, saNoIncremental, saRemoveSecurity |
TObjectType | otUnknown, otText, otPath, otImage, otShading, otForm |
TPageMode | pmNone, pmOutline, pmThumbs, pmFullScreen, pmOptionalContentGroup, pmAttachments, pmUnknown |
TPdfAction | acUnsupported, acGoto, acGotoRemote, acUri, acLaunch |
TPdfPrintMode | prEmf, prTextOnly, prPostScript2, prPostScript3, prPostScript2PassThrough, prPostScript3PassThrough, prEmfImageMasks, prPostScript3Type42, prPostScript3Type42PassThrough |
TPdfDisplayMode | dmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover |
TPdfViewLinkOption | loAutoGoto, loAutoOpenURI, loAutoLaunch, loAutoEmbeddedGoto |
TPdfViewLinkOptions | Set of TPdfViewLinkOption values |
| Type | Values |
TPdfFillMode | fmNone, fmAlternate, fmWinding |
TPdfLineCap | lcDefault, lcButt, lcRound, lcProjectingSquare |
TPdfLineJoin | ljDefault, ljMiter, ljRound, ljBevel |
TPdfBlendMode | bmDefault, bmMultiply, bmScreen, bmOverlay, bmDarken, bmLighten, bmColorDodge, bmColorBurn, bmHardLight, bmSoftLight, bmDifference, bmExclusion, bmHue, bmSaturation, bmColor, bmLuminosity |
| Type | Description |
TPdfAnnotationSubtype | Annotation subtypes: Text, Link, FreeText, Line, Square, Circle, Polygon, PolyLine, Highlight, Underline, Squiggly, StrikeOut, Stamp, Caret, Ink, Popup, FileAttachment, Sound, Movie, Widget, Screen, PrinterMark, TrapNet, Watermark, 3D, RichMedia, XFAWidget, Redact |
TPdfAnnotationFlag | Flags: afInvisible, afHidden, afPrint, afNoZoom, afNoRotate, afNoView, afReadOnly, afLocked, afToggleNoView |
TPdfAnnotation | Record containing Subtype, Flags, Color, InteriorColor, Contents, Rectangle, and other properties |
| Type | Description |
TPdfFormType | ftUnknown, ftNone, ftAcroForm, ftXfaFull, ftXfaForeground |
TPdfFormFieldType | fiUnknown, fiPushButton, fiCheckBox, fiRadioButton, fiComboBox, fiListBox, fiTextField, fiSignature |
TPdfFormFieldFlag | ffReadOnly, ffRequired, ffNoExport, ffMultiline, ffChoiceCombo, ffChoiceEdit, ffPassword, ffChoiceMultiSelect |
TPdfFormFieldInfo | Record containing FieldType, Flags, Name, Value, AlternateName, and other properties |
| Type | Fields |
TBookmark | Handle, Title, PageNumber, Action, ActionPageNumber |
TDestination | Handle, Name, PageNumber, HasX, X, HasY, Y, HasZoom, Zoom |
TLinkAnnotation | Handle, Rectangle, PageNumber, Action, ActionPageNumber, ActionPath, Points |
TWebLink | Url: WString, Rectangles: TPdfRectangles |
TPdfImage | Width: Integer, Height: Integer, Data: TBytes |
TPdfSignature | Content: TBytes, Encoding: WString, Reason: WString, Time: WString, Permission: Integer |
TPdfStructureElement | Level, ParentIndex, TypeName, ObjectType, Title, AlternateText, ActualText, Expansion, ID, Language, MarkedContentID, MarkedContentIDs, ChildCount, ChildMarkedContentIDs, AttributeCount |
| Type | Description |
IPdfCancellationToken | Read-only cancellation token with IsCancelled, ThrowIfCancelled, and RegisterCallback |
IPdfCancellationTokenSource | Owner-side cancellation source exposing Token and Cancel |
TPdfCancellationTokenSource | Default implementation; use TPdfCancellationTokenSource.New |
EPdfOperationCancelled | Exception raised by ThrowIfCancelled after cancellation |
TPdfFutureStatus | pfsSuccess, pfsCancelled, pfsFailure |
TPdfFutureResult<T> | Result envelope with Value, Status, ErrorMessage, and IsSuccess / IsCancelled / IsFailure helpers |
TPdfFuture<T>.Run | Fire-and-forget background worker helper that queues a reply back to the main thread |
PdfNoCancellationToken | Shared token that never cancels |
| Function | Description |
Loaded: Boolean | Returns True if the selected PDFium library is loaded |
LoadLibrary | Manually load the PDFium library |
UnloadLibrary | Unload the PDFium library |
DecodeDate(const Value: string; out DateTime: TDateTime; out DateTimeOffset: Integer): Boolean | Parse PDF date string to TDateTime and UTC offset |
SetPdfPrintMode(PrintMode: TPdfPrintMode): Boolean | Select the PDFium Windows printing output mode for subsequent print rendering |
SetPdfPrintPaperHandlingDevMode(var DevMode: TDeviceMode; PrintPaperHandling: TPrintPaperHandling): Boolean | Map a PDF viewer-preference duplex hint into Windows DEVMODE.dmDuplex |
V8FeaturesAvailable: Boolean | Returns True when the loaded DLL exposes the PDFium V8 helper exports |
XfaBStrHelpersAvailable: Boolean | Returns True when the loaded DLL exposes the XFA FPDF_BSTR helper exports |
GetRecommendedV8Flags: string | Returns PDFium's recommended V8 command-line flags, or an empty string when the loaded DLL does not expose them |
FPDF_RenderPageSkia | Low-level PDFium binding for rendering page content to an external SkCanvas |
FPDF_FFLDrawSkia | Low-level PDFium binding for drawing form fields and popup annotations to an external SkCanvas |
PointsToInches(Points: Double): Double | Convert PDF points to inches |
PointsToPixels(Points, PixelsPerInch: Double): Double | Convert PDF points to pixels |
PixelsToInches(Pixels, PixelsPerInch: Double): Double | Convert pixels to inches |
PixelsToPoints(Pixels, PixelsPerInch: Double): Double | Convert pixels to PDF points |