| Type | Values or purpose |
|---|---|
EPdfLayoutError | Výjimka vyvolaná pro neplatný vstup rozložení, překročené limity a nekonzistentní sémantickou strukturu |
TPdfLayoutAlignment | plaLeft, plaCenter, plaRight |
TPdfLayoutCommandKind | plcText, plcRule, plcImage, plcPageXObject, plcCachedNode, plcLink, plcRectangle |
TPdfLayoutItemKind | pliText, pliSpacer, pliRule, pliImage, pliPageXObject, pliPageBreak, pliCachedNode, pliLink, pliSemanticNode, pliTable |
TPdfLayoutSemanticRole | plsrArtifact, plsrParagraph, plsrHeading1, plsrHeading2, plsrHeading3, plsrHeading4, plsrHeading5, plsrHeading6, plsrList, plsrListItem, plsrListLabel, plsrListBody, plsrTable, plsrTableRow, plsrTableHeader, plsrTableData, plsrFigure, plsrCaption, plsrLink, plsrSection, plsrDivision |
TPdfLayoutTableScope | pltsNone, pltsRow, pltsColumn, pltsBoth |
TPdfLayoutListNumbering | plnNone, plnDisc, plnCircle, plnSquare, plnDecimal, plnUpperRoman, plnLowerRoman, plnUpperAlpha, plnLowerAlpha |
TPdfLayoutGridTrackKind | plgtkFixed, plgtkFraction, plgtkAuto |
TPdfMarkupFormat | pmfMarkdown, pmfHtml |
| Type | Public members |
|---|---|
TPdfLayoutSemantics | Role, ParentID, ElementID, AlternateText, ActualText, Language, HeaderIDs, TableScope, ColumnSpan, RowSpan, ListNumbering, Artifact, Paragraph, Figure |
TPdfLayoutTextStyle | FontName, FontSize, Color, Alpha, LineHeight, Alignment, KeepTogether, BreakLongWords, SpaceBefore, SpaceAfter, Default |
TPdfLayoutConstraints | KeepTogether, KeepWithNext, PageBreakBefore, PageBreakAfter, OrphanLines, WidowLines, Default |
TPdfLayoutPageSettings | Width, Height, MarginLeft, MarginTop, MarginRight, MarginBottom, HeaderHeight, FooterHeight, A4, Letter |
TPdfLayoutRect | Left, Top, Width, Height |
TPdfLayoutGridTrack | Kind, Value, Minimum, Maximum, MeasuredContent |
TPdfLayoutGridTracks | Dynamické pole TPdfLayoutGridTrack |
TPdfLayoutGridSizes | Dynamické pole vyřešených velikostí drah |
TPdfLayoutTableOptions | CellPadding, BorderWidth, BorderColor, BorderAlpha, RepeatHeaderRows, Default |
TPdfMarkupOptions | BaseStyle, HeadingScale, MaxInputCharacters, MaxNodes, Default |
TPdfLayoutSemanticElement | Semantics, ParentElementIndex |
TPdfLayoutSemanticElements | Dynamické pole TPdfLayoutSemanticElement |
TPdfLayoutCommand | Kind, PageNumber, Bounds, Text, FontName, FontSize, Color, Alpha, Alignment, Thickness, FileName, Uri, Source, SourcePageIndex, SemanticElementIndex, MarkedContentID, AnnotationIndex |
TPdfLayoutCommands | Dynamické pole TPdfLayoutCommand |
TPdfLayoutPlan | PageSettings, PageCount, Commands, SemanticElements, TextLineCount, RuleCount, RectangleCount, ImageCount, PageXObjectCount, CachedNodeCount, LinkCount, TaggedContentCount, ArtifactCount, MeasuredTextCount, TotalPageReferenceCount, ReservedPageDigits, CacheHitCount, CacheMissCount, ReusedXObjectCount, ColumnCount, ColumnGap |
| Type | Public members |
|---|---|
TPdfLayoutMeasurer | MeasureTextWidth, CacheIdentity |
TPdfLayoutItem | Kind |
TPdfLayoutTableCell | Text, Uri, Style, ColumnSpan, RowSpan, Header, ElementID, HeaderIDs, Scope |
TPdfLayoutTableRow | AddCell, Cells, Header, AllowSplit, MinimumHeight |
TPdfLayoutTable | Create, Destroy, AddRow, SetCaption, Columns, Rows, Options, Caption, CaptionStyle, ElementID, ParentID |
TPdfLayoutPagedPlan | Create, Destroy, ClearPageCache, MaterializePage, Reset, Summary, CommandCount, StorageByteCount, SourceCount, Completed, rozpočty MaxCommandCount, MaxStorageBytes, MaxPageCommands, MaxSourceCount a MaxCachedPages a statistiky mezipaměti CachedPageCount, CacheHitCount, CacheMissCount a PeakCachedPageCount |
TPdfLayoutDocument | Create, Destroy, Clear, AddText, AddSpacer, AddRule, AddImage, AddPageXObject, AddCachedNode, AddLink, AddSemanticNode, SetLastItemSemantics, SetLastItemConstraints, AddTable, AddPageBreak, LoadMarkup, InvalidateCache, BuildPlan, BuildPagedPlan, PageSettings, HeaderText, FooterText, HeaderStyle, FooterStyle, ReservedPageDigits, ColumnCount, ColumnGap, Items |
TPdfLayoutCachedNode | Create, Destroy, Invalidate, BeginEmission, EndEmission, Content, Width, Height, Built |
Zavolejte SetLastItemConstraints po přidání jakékoli viditelné proudové položky, abyste ji udrželi pohromadě, udrželi ji se začátkem další položky, nebo vynutili fyzický konec stránky před ní nebo po ní
OrphanLines je minimální počet řádků odstavce udržených na konci oblasti a WidowLines je minimum umístěné na začátku následující oblasti; obojí má výchozí hodnotu jedna, aby se zachovalo stávající stránkování
Omezení platí stejně pro položky rolí odstavce, odkazu, seznamu, obrázku a tabulky, zatímco jen sémantické kontejnery nemají geometrii a proto odmítají stránkovací omezení
Položka pliTable přijímá jen PageBreakBefore a PageBreakAfter; dělení řádků a udržení začátku tabulky řídí tabulkový model
Plánovač kešuje zalomené řádky během stavby, takže predikce keep-with-next a výpis finálních příkazů neměří tentýž text dvakrát
Vytvořte TPdfLayoutPagedPlan nad vyhrazeným posouvatelným a měnitelně velkým TStream a poté zavolejte BuildPagedPlan nebo jej předejte do TPdf.GeneratePagedLayout
Plánovač serializuje příkazy okamžitě, uvolní každý dokončený výsledek zalomeného textu a nechá Plan.Commands prázdné, přičemž v souhrnu uchová nastavení stránek, sémantické prvky, počty a stabilní součty stránek
Příkazy těla a pozdější příkazy hlavičky nebo patičky jsou indexované jako propojené segmenty stránek, takže MaterializePage obnoví kompletní stránku bez prohledávání příkazů jiných stránek
MaxCachedPages ohraničuje jen pole stránek uchovávané plánem; volající, kteří si ponechají vrácená pole, prodlužují jejich životnost a PDFium uchovává nativní autorované stránky, dokud není cílový dokument uložen nebo zavřen
Formát úložiště je soukromý stav relace, nikoli přenosný formát souboru, proud nesmí být sdílen ani externě měněn a zdrojové objekty odkazované stránkovými XObjecty nebo kešovanými uzly musí přežít stránkovaný plán
Použijte TPdfRandomAccessStore, když mají příkazy zůstat v paměti do zvoleného prahu a poté přetéct do dočasného úložiště mazaného při zavření
Vytvořte TPdfLayoutTable s pevnými, zlomkovými nebo obsahově velikostními dráhami mřížky, přidejte řádky a buňky a poté zavolejte AddTable; dokument uchovává vlastněný snímek, takže pozdější mutace volajícího nemohou zneplatnit stávající keš plánu
Hlavičkové řádky musí být na začátku tabulky souvislé a po přechodu stránky nebo sloupce se opakují, když je RepeatHeaderRows true; rozpětí hlavičkových řádků se nemohou rozšířit do řádků těla
Řádek těla se může rozdělit jen tehdy, když je AllowSplit true a nepatří do skupiny přesahující řádky; všechny buňky v rozděleném bloku sdílejí totéž pásmo řádků, odsazení a geometrii ohraničení
Popisky zůstávají s opakovaným blokem hlavičky a minimálním začátkem první skupiny těla, zatímco tranzitivní skupiny přesahující řádky se přesunou jako jedna atomická jednotka
Plánovač vydá jeden prvek Table, volitelný Caption, potomky TR a buňky TH nebo TD bez ohledu na počet stránek; opakované hlavičkové příkazy znovu použijí původní sémantické indexy a buňky TD automaticky dostanou překrývající se ID hlaviček, pokud nejsou dodána explicitní platná ID
Ohraničení tabulky jsou příkazy plcRectangle artefaktu vykreslované přes nativní objekty cest PDFium, zatímco text popisku a buněk zůstává tagovaným obsahem
| Routine | Description |
|---|---|
ResolveLayoutText | Rozšíří zástupná místa čísel stránek pomocí rezervované šířky číslic |
PdfLayoutSemanticRoleName | Vrací název struktury tagged-PDF pro sémantickou roli |
BuildTaggedLayoutPdf | Aplikuje dokončený plán rozložení a tagovanou strukturu na zdrojové bajty PDF |
ResolvePdfLayoutGridTracks | Vyřeší pevné, zlomkové a obsahově velikostní dráhy mřížky v dostupné šířce |