PDFium Delphi Component Docs

BuildReflowDocument-metodi

Komponentti: TPdf  ·  Yksikkö: PDFium
Rakentaa rajatun semanttisen lukumallin responsiivista HTML:ää, mobiililukemista, saavutettavuutta ja indeksointia varten

Syntax

function BuildReflowDocument(
  const Options: TPdfReflowOptions;
  const CancellationToken: IPdfCancellationToken = nil): TPdfReflowDocument;

Description

BuildReflowDocument lukee jokaisen valitun sivun GetStructuredText-kutsun kautta, suosii Tagged PDF -semantiikkaa ja turvautuu fyysisen asettelun päättelyyn, kun rakenne puuttuu

Palautettu TPdfReflowDocument.Nodes-taulukko on vakaa esijärjestyspuu ParentIndex- ja Depth-kentillä, mikä välttää rekursiivisen omistajuuden ja säilyttää samalla sivu-, otsikko-, kappale-, luettelo-, kuva-, kuvateksti-, taulukko-, rivi- ja solusuhteet

Jokainen TPdfReflowNode kantaa sivunsa, tekstinsä, kielensä, semanttisen lähteensä, rajansa, otsikkotasonsa, taulukkokoordinaatit RowIndex ja ColumnIndex ulottumineen, IsHeader-tilan ja luottamusarvon soveltuvin osin

TPdfReflowOptions valitsee sivuikkunan ja tulosteen portit; DetectTables ottaa käyttöön taulukoiden tunnistuksen sisäkkäisellä TableOptions-budjettitietueella, ja tuloksena syntyvä TPdfReflowDocument paljastaa tunnistettujen taulukoiden TableCount-arvon solmupuunsa rinnalla

Tunnistettu taulukkoteksti korvaa päällekkäiset kappalelohkot, jotta uudelleenjuoksutettu tulos ei toista taulukon sisältöä

HTML output

TPdfReflowDocument.ToHtml tuottaa semanttiset h1h6-, p-, ul-, li-, figure-, figcaption-, table-, th- ja td-elementit

Teksti- ja attribuuttiarvot escapoidaan aina, rivi- ja sarakeulottumat säilytetään, ja valinnainen responsiivinen CSS ei vaadi skriptiä eikä ulkoista resurssia

FullDocument, IncludeCss, IncludePageSections, IncludeGeometry ja PreserveLineBreaks ohjaavat sarjallistamista jäsentämättä PDF:ää uudelleen

Ranges and budgets

Example

var
  Options: TPdfReflowOptions;
  Document: TPdfReflowDocument;
begin
  Options := TPdfReflowOptions.Default;
  Options.IncludeGeometry := True;
  Document := Pdf1.BuildReflowDocument(Options);
  Memo1.Text := Document.ToHtml;
end;

See Also

GetStructuredText, ExtractTables, ReadableContent