PDFium Delphi Component Docs

Component TPdf

Μονάδα: PDFium
TPdf
Χρησιμοποιήστε το component TPdf για να ανοίξετε, να πλοηγηθείτε, να εξαγάγετε κείμενο και να επεξεργαστείτε έγγραφα PDF

Παράδειγμα

Pdf.FileName := 'document.pdf';
Pdf.Password := 'password';
Pdf.Active := True; // άνοιγμα εγγράφου PDF
Pdf.PageNumber := 1; // επιλογή σελίδας
ShowMessage(Pdf.Text); // εξαγωγή κειμένου

Τύποι

type TBookmark = record
  Handle: FPDF_BOOKMARK;
  Title: WString;
  PageNumber: Integer;
  Destination: TDestination;
  DescendantCount: Integer;
  IsOpen: Boolean;
  Action: TPdfAction;
  ActionPageNumber: Integer;
  ActionDestination: TDestination;
  ActionPath: WString;
  HasColor: Boolean;
  Color: TColor;
end;

type TBookmarks = array of TBookmark;

Δεδομένα σελιδοδείκτη

 

type TDestination = record
  Handle: FPDF_DEST;
  Name: WString;
  PageNumber: Integer;
  ViewMode: TPdfDestinationViewMode;
  ViewParameterCount: Integer;
  ViewParameters: TPdfDestinationViewParameters;
  HasX: Boolean;
  X: Single;
  HasY: Boolean;
  Y: Single;
  HasZoom: Boolean;
  Zoom: Single;
end;

Δεδομένα ονοματισμένου προορισμού

 

type TPdfDestinationViewMode = (dvmUnknown, dvmXYZ, dvmFit, dvmFitHorizontal, dvmFitVertical, dvmFitRectangle, dvmFitBoundingBox, dvmFitBoundingBoxHorizontal, dvmFitBoundingBoxVertical);

type TPdfDestinationViewParameters = array [0..3] of Single;

Λειτουργία προβολής προορισμού και οι διατεταγμένες εγγενείς παράμετροί της

 

type TLinkAnnotation = record
  Handle: FPDF_LINK;
  Rectangle: TPdfRectangle;
  PageNumber: Integer;
  Action: TPdfAction;
  ActionPageNumber: Integer;
  ActionPath: WString;
  Points: array of TQuadrilateralPoint;
end;

type TLinkAnnotations = array of TLinkAnnotation;

type TQuadrilateralPoint = array [1..4] of TPdfPoint;

Δεδομένα σχολίου συνδέσμου

 

type TPdfPermission = (permPrint, permModify, permCopy, permAnnotate, permFillForms, permAccessibility, permAssemble, permPrintHighQuality);

type TPdfPermissions = set of TPdfPermission;

Τυποποιημένες σημαίες δικαιωμάτων εγγράφου που αποκωδικοποιούνται από την εγγενή μάσκα δικαιωμάτων

 

type TPdfDocumentMetadata = record
  Title: WString;
  Author: WString;
  Subject: WString;
  Keywords: WString;
  Creator: WString;
  Producer: WString;
  CreationDate: WString;
  ModifiedDate: WString;
end;

Ένα στιγμιότυπο των τυπικών πεδίων του λεξικού Info του εγγράφου

 

type TObjectType = (otUnknown, otText, otPath, otImage, otShading, otForm);

Καθορίζει τον τύπο του αντικειμένου PDF

 

type TPageMode = (pmNone, pmOutline, pmThumbs, pmFullScreen, pmOptionalContentGroup, pmAttachments, pmUnknown);

Καθορίζει πώς πρέπει να εμφανίζεται το έγγραφο PDF όταν ανοίγεται

 

type TPdfAction = (acUnsupported, acGoto, acGotoRemote, acUri, acLaunch);

Καθορίζει τον τύπο μιας ενέργειας που σχετίζεται με ένα στοιχείο σελιδοδείκτη

 

type TPdfAnnotation = record
  Subtype: TPdfAnnotationSubtype;
  Flags: TPdfAnnotationFlags;
  HasColor: Boolean;
  Color: TColor;
  ColorAlpha: Byte;
  HasInteriorColor: Boolean;
  InteriorColor: TColor;
  InteriorColorAlpha: Byte;
  HasAttachmentPoints: Boolean;
  AttachmentPoints: TQuadrilateralPoint;
  Rectangle: TPdfRectangle;
  ContentsText: WString;
  AuthorText: WString;
end;

Δεδομένα σχολίου

 

type TPdfAnnotationFlag = (afInvisible, afHidden, afPrint, afNoZoom, afNoRotate, afNoView, afReadOnly, afLocked, afToggleNoView);

type TPdfAnnotationFlags = set of TPdfAnnotationFlag;

Σημαίες σχολίων

 

type TPdfAnnotationSubtype = (anUnknown, anText, anLink, anFreeText, anLine, anSquare, anCircle, anPolygon, anPolyLine, anHighlight, anUnderline, anSquiggly, anStrikeout, anStamp, anCaret, anInk, anPopup, anFileAttachment, anSound, anMovie, anWidget, anScreen, anPrinterMark, anTrapNet, anWaterMark, anThreed, anRichMedia, anXfaWidget, anRedact);

Ο υποτύπος του σχολίου

 

type TPdfBlendMode = (bmDefault, bmColor, bmColorBurn, bmColorDodge, bmDarken, bmDifference, bmExclusion, bmHardLight, bmHue, bmLighten, bmLuminosity, bmMultiply, bmNormal, bmOverlay, bmSaturation, bmScreen, bmSoftLight);

Καθορίζει πώς αναμειγνύονται τα επίπεδα μεταξύ τους

 

type TPdfDisplayMode = (dmSingleContinuous, dmTwoPageContinuous, dmTwoPageContinuousWithCover);

Καθορίζει πώς εμφανίζονται οι σελίδες του εγγράφου PDF

 

type TPdfFeature = (feUnknown, feXfaForm, fePortableCollection, feAttachment, feSecurity, feSharedReview, feSharedFormAcrobat, feSharedFormFilesystem, feSharedFormEmail, fe3dAnnotation, feMovieAnnotation, feSoundAnnotation, feScreenMediaAnnotation, feScreenRichMediaAnnotation, feAttachmentAnnotation, feSignatureAnnotation);

Χαρακτηριστικό του εγγράφου PDF που αναφέρεται από το συμβάν OnUnsupportedFeature

 

type TPdfFillMode = (fmNone, fmAlternate, fmWinding);

Καθορίζει πώς σχηματίζονται οι περιοχές γεμίσματος όταν η διαδρομή τέμνει τον εαυτό της

 

type TPdfFormFieldFlag = (ffReadOnly, ffRequired, ffNoExport, ffMultiline, ffChoiceCombo, ffChoiceEdit, ffPassword, ffChoiceMultiSelect);

type TPdfFormFieldFlags = set of TPdfFormFieldFlag;

Σημαίες πεδίου φόρμας

 

type TPdfFormFieldInfo = record
  Name: WString;
  AlternateName: WString;
  FieldType: TPdfFormFieldType;
  Flags: TPdfFormFieldFlags;
  OptionLabels: array of WString;
  OptionSelected: array of Boolean;
  FontSize: Single;
  Checked: Boolean;
  ExportValue: WString;
  GroupCount: Integer;
  GroupIndex: Integer;
end;

Πληροφορίες πεδίου φόρμας

 

type TPdfFormFieldType = (fiUnknown, fiPushButton, fiCheckBox, fiRadioButton, fiComboBox, fiListBox, fiTextField, fiSignature);

Καθορίζει τον τύπο του πεδίου φόρμας

 

type TPdfFormType = (ftUnknown, ftNone, ftAcroForm, ftXfaFull, ftXfaForeground);

Καθορίζει τον τύπο των φορμών στο έγγραφο PDF

 

type TPdfImage = record
  Width: Integer;
  Height: Integer;
  Data: TBytes;
end;

Μέγεθος σε εικονοστοιχεία και δεδομένα του αντικειμένου εικόνας PDF

 

type TPdfLineCap = (lcDefault, lcButt, lcRound, lcProjectingSquare);

Το σχήμα που χρησιμοποιείται στα άκρα των ανοιχτών υποδιαδρομών

 

type TPdfLineJoin = (ljDefault, ljMiter, ljRound, ljBevel);

Το σχήμα που χρησιμοποιείται στις γωνίες των διαδρομών που περιγράφονται

 

type TPdfPoint = record
  X, Y: Double;
end;

Σημείο με συντεταγμένες X και Y

 

type TPdfRectangle = record
  Left, Top, Right, Bottom: Double;
end;
type TPdfRectangles = array of TPdfRectangle;

Ορθογώνια περιοχή με συντεταγμένες Left, Top, Right και Bottom

 

type TPdfFileIdentifierType = (fidPermanent, fidChanging);

Επιλογέας αναγνωριστικού αρχείου trailer · το fidPermanent διαβάζει την πρώτη καταχώρηση /ID και το fidChanging διαβάζει τη δεύτερη καταχώρηση /ID

 

type TPdfPageBox = (pbMedia, pbCrop, pbBleed, pbTrim, pbArt);

Επιλογέας πλαισίου λεξικού σελίδας που χρησιμοποιείται από τα PageBox, GetPageBox και SetPageBox

 

type TPdfJavaScriptAction = record
  Name: WString;
  Script: WString;
end;
type TPdfJavaScriptActions = array of TPdfJavaScriptAction;

Δεδομένα ενεργειών δέντρου ονομάτων JavaScript σε επίπεδο εγγράφου

 

type TPdfSignature = record
  Content: TBytes;
  Encoding: WString;
  Reason: WString;
  Time: WString;
  Permission: Integer;
end;

Πληροφορίες ψηφιακής υπογραφής

 

type TPdfIntegerArray = array of Integer;

Πίνακας ακεραίων που χρησιμοποιείται από τις λίστες ID επισημασμένου περιεχομένου του δέντρου δομής

 

type TPdfSingleArray = array of Single;

Πίνακας κινητής υποδιαστολής απλής ακρίβειας που χρησιμοποιείται από τους ορισμούς θέσεων χαρακτήρων αντικειμένων κειμένου

 

type TPdfPrintPageRange = record
  StartPage: Integer;
  EndPage: Integer;
end;
type TPdfPrintPageRanges = array of TPdfPrintPageRange;

Εύρη σελίδων εκτύπωσης με βάση το ένα από τις προτιμήσεις προβολής του εγγράφου

 

type TPdfStructureElement = record
  Level: Integer;
  ParentIndex: Integer;
  TypeName: WString;
  ObjectType: WString;
  Title: WString;
  AlternateText: WString;
  ActualText: WString;
  Expansion: WString;
  ID: WString;
  Language: WString;
  MarkedContentID: Integer;
  MarkedContentIDs: TPdfIntegerArray;
  ChildCount: Integer;
  ChildMarkedContentIDs: TPdfIntegerArray;
  AttributeCount: Integer;
  ListNumbering: WString;
  Scope: WString;
  HasHeaders: Boolean;
  HeadersIds: array of WString;
  ColSpan: Integer;
  RowSpan: Integer;
  HasPrintField: Boolean;
  NamespaceUri: WString;
  RoleMappedNamespaceUri: WString;
  RoleMappedTypeName: WString;
  HasReference: Boolean;
  HasAssociatedFile: Boolean;
  AssociatedFileRelationship: WString;
  AssociatedFileDescription: WString;
  AnnotationSubtype: WString;
  AnnotationContents: WString;
  AnnotationAlternateText: WString;
  IsArtifact: Boolean;
  WidgetCount: Integer;
  HasAppearance: Boolean;
  LabelText: WString;
  FieldAlternateName: WString;
end;

type TPdfStructureElements = array of TPdfStructureElement;

Ισοπεδωμένα δεδομένα στοιχείων λογικής δομής για σελίδες Tagged PDF

 

type TPdfFormSelectionRect = record
  PageNumber: Integer;
  Bounds: TPdfRectangle;
end;

Ορθογώνιο στον χώρο της σελίδας, ιδιοκτησίας του καλούντα, που αναφέρεται από την εγγενή επιλογή κειμένου φόρμας

 

type TPdfStructureReadOptions = record
  MaxDepth: Integer;
  MaxElements: Integer;
  MaxAttributeValues: Integer;
  DeadlineMilliseconds: Cardinal;
  IncludeAttributes: Boolean;
  class function Default: TPdfStructureReadOptions; static;
end;

Προϋπολογισμοί πόρων για επαναληπτική εγγενή διάσχιση του δέντρου δομής

type TPdfStructureReadStatus = record
  Completed: Boolean;
  ElementsVisited: Integer;
  AttributeValuesVisited: Integer;
  DepthLimitReached: Boolean;
  ElementLimitReached: Boolean;
  AttributeLimitReached: Boolean;
  DeadlineReached: Boolean;
  VisitorStopped: Boolean;
end;

Λεπτομέρειες ολοκλήρωσης και περικοπής που επιστρέφονται από τις μεθόδους διάσχισης της δομής

 

type TPdfVersion = (pvUnknown, pv10, pv11, pv12, pv13, pv14, pv15, pv16, pv17);

Η έκδοση ενός αρχείου PDF ή ενός ρητού στόχου SaveAs · πιθανές τιμές είναι άγνωστη έκδοση και εκδόσεις PDF από 1.0 έως 1.7 · οι ρητοί στόχοι SaveAs από PDF 1.3 έως PDF 1.7 κανονικοποιούνται και επικυρώνονται έναντι της επιλεγμένης έκδοσης PDF

 

type TPrintPaperHandling = (phUndefined, phSimplex, phDuplexFlipShortEdge, phDuplexFlipLongEdge);

Επιλογές διαχείρισης χαρτιού εκτύπωσης

 

type TPdfPrintMode = (prEmf, prTextOnly, prPostScript2, prPostScript3, prPostScript2PassThrough, prPostScript3PassThrough, prEmfImageMasks, prPostScript3Type42, prPostScript3Type42PassThrough);

Λειτουργία εξόδου εκτύπωσης Windows PDFium που επιλέγεται από το SetPdfPrintMode

 

type TRenderOption = (reAnnotations, reLcd, reNoNativeText, reGrayscale, reDebugInfo, reNoCatchException, reLimitCache, reHalftone, rePrinting, reReverseByteOrder, reNoSmoothText, reNoSmoothImage, reNoSmoothPath, reInvert, reNightDuotone);

type TRenderOptions = set of TRenderOption;

Σημαίες απόδοσης σελίδας

 

type TRotation = (ro0, ro90, ro180, ro270);

Η περιστροφή σελίδας PDF · η σελίδα περιστρέφεται δεξιόστροφα

 

type TSaveOption = (saNone, saIncremental, saNoIncremental, saRemoveSecurity);

Καθορίζει πώς θα αποθηκευτεί το έγγραφο PDF

 

type TSearchOption = (seCaseSensitive, seWholeWord, seConsecutive);

type TSearchOptions = set of TSearchOption;

Σημαίες αναζήτησης

 

type TWebLink = record
  Url: WString;
  Rectangles: TPdfRectangles;
end;

type TWebLinks = array of TWebLink;

Πληροφορίες URL και όρια για τον σύνδεσμο ιστού

 

type WString = {$ifdef D2009PLUS} string {$else} WideString {$endif D2009PLUS};

Ευρεία συμβολοσειρά (Wide string)

 

Σταθερές

const PointsPerInch: Integer = 72;

Το PDF χρησιμοποιεί σημεία (points) με πυκνότητα 72 σημείων ανά ίντσα

 

const FLAT_NORMALDISPLAY = 0;
const FLAT_PRINT = 1;

Προφίλ ισοπέδωσης που μεταβιβάζονται στα FlattenPage / FlattenAllPages · το FLAT_NORMALDISPLAY προορίζεται για εμφάνιση στην οθόνη, ενώ το FLAT_PRINT για εκτυπωμένη έξοδο

 

const FLATTEN_FAIL = 0;
const FLATTEN_SUCCESS = 1;
const FLATTEN_NOTHINGTODO = 2;

Κωδικοί αποτελέσματος που επιστρέφονται από το FlattenPage

 

type TPdfReadingUnit = record
  Text: WString;
  Kind: TPdfContentFragmentKind;
  HeadingLevel: Integer;
  Page: Integer;
  Rects: TPdfRectangles;
  FragmentIndex: Integer;
  SentenceIndex: Integer;
  IsAlternateText: Boolean;
  Language: WString;
end

type TPdfReadingUnits = array of TPdfReadingUnit;

Μονάδες ανάγνωσης σε επίπεδο πρότασης που χρησιμοποιούνται από ροές εργασίας μετατροπής κειμένου σε ομιλία και υποβοηθούμενης ακρόασης-ανάγνωσης

 

type TPdfWordBox = record
  Text: WString;
  StartIndex: Integer;
  Count: Integer;
  Rect: TPdfRectangle;
  Page: Integer;
end

type TPdfWordBoxes = array of TPdfWordBox;

Εύρη κειμένου σε επίπεδο λέξης και ορθογώνια σελίδας που χρησιμοποιούνται από συγχρονισμένες επισημάνσεις ανάγνωσης

 

type TPdfSpokenSpan = record
  SpokenStart: Integer;
  SpokenCount: Integer;
  Page: Integer;
  StartIndex: Integer;
  Count: Integer;
end

type TPdfSpokenSpans = array of TPdfSpokenSpan;

Αντιστοιχισμένες ακολουθίες που μεταφράζουν τις μετατοπίσεις της μηχανής ομιλίας πίσω στο κείμενο σελίδας PDF

 

type TPdfSpokenText = record
  Text: WString;
  Spans: TPdfSpokenSpans;
end

type TPdfSpokenTexts = array of TPdfSpokenText;

Τμήματα ομιλίας και αντιστοιχίσεις πηγής που χρησιμοποιούνται από ροές εργασίας εκφώνησης και το TPdfReadingSession

 

type TPdfReadingSessionState = (pssIdle, pssSpeaking, pssPaused);

Κατάσταση αναπαραγωγής που αναφέρεται από το TPdfReadingSession

 

Καθολικές μεταβλητές

var LibraryName: string = 'pdfium.dll';

Όνομα της τυπικής βιβλιοθήκης PDFium που χρησιμοποιείται όταν το EnableV8Engine είναι False · μπορεί να αλλάξει πριν την κλήση του LoadLibrary

 

var EnableV8Engine: Boolean = False;

Ορίστε σε True πριν τη φόρτωση για να επιλέξετε το pdfium.v8.dll από τον αντίστοιχο φάκελο DLLs Win32 ή Win64

 

Καθολικές συναρτήσεις

Ιδιότητες

Μέθοδοι

Συμβάντα