Begrenset strømmende layout
HotPDF kan mellomlagre hver fullførte side i filbakket lagring, anvende sidébrytingsbegrensninger for avsnitt, eksponere avgrenset layoutdiagnostikk, markere semantiske avsnitt og pagineringsartefakter, og løse avsnittets baseretning før blandetrettet tekst sendes ut
Umiddelbar utsending av sider
Sett ImmediateFlushLayout før BeginDoc for rapporter der sideantallet ikke er kjent på forhånd
Når en side lukkes, flyttes dens endelige komprimerte eller ukomprimerte innholdsstrøm fra minnet til en eid midlertidig filstrøm, mens PDF-objektet forblir tilgjengelig for normal kryssreferanse- og ressursferdigstilling
ImmediateFlushedPageCount og ImmediateFlushedBytes rapporterer mengden mellomlagret innhold, og midlertidige filer slettes når deres eierende strømmer frigjøres
Paginering av avsnitt
ParagraphIndex := PDF.CreateParagraph(0, jtLeft, 36, 36, 36, 36);
PDF.ConfigureParagraphPagination(ParagraphIndex, True, 2, 2);
PDF.ConfigureParagraphDirection(ParagraphIndex, pdAuto);
PDF.BeginParagraph(ParagraphIndex);
PDF.CurrentParagraph.ShowUnicodeText(BodyText);
PDF.EndParagraph;
KeepWithNextflytter et avsnitt når det ville forbruke den siste linjen som bør forbli for etterfølgende innholdMinOrphanLinesforhindrer at for få innledende linjer blir stående nederst på en sideMinWidowLinesforskutterer et bryt når for få avsluttende linjer ville bli igjen på neste side- Automatisk fortsettelse bevarer kildesidens bredde, høyde, skrift, marger og avsnittsinnstillinger
- Når
ParaAutoAddPageer false, stopper overflyt på gjeldende side og gir enldkOverflow-diagnostikk
Layoutdiagnostikk
THPDFLayoutDiagnostic registrerer THPDFLayoutDiagnosticKind, kilde- og relaterte sideindekser, berørt rektangel, linjeantall og en engelsk årsak for hver bevarte beslutning
THPDFLayoutDiagnosticArray returneres av GetLayoutDiagnostics, mens GetLayoutDiagnostic støtter indeksert tilgang uten å allokere en kopi
LayoutDiagnosticLimit avgrenser bevarte poster og LayoutDiagnosticDroppedCount rapporterer beslutninger forkastet etter den grensen
ldkAutomaticPageBreakrapporterer en ordinær fortsettelseldkKeepWithNext,ldkOrphanContrologldkWidowControlidentifiserer begrensningen som flyttet et brytldkOverflowidentifiserer innhold stoppet av deaktivert automatisk pagineringldkImmediateFlushidentifiserer en lukket side flyttet til filbakket lagring
Avsnittsretning
THPDFParagraphDirection tilbyr pdAuto, pdLeftToRight og pdRightToLeft
DetectParagraphDirection anvender første-stærke-tegn-løsning på tvers av BMP- og supplerende-plans RTL-skripter, slik at nøytrale prefikser og sekundære retningsløp ikke velger feil baseretning
Bruk ConfigureParagraphDirection for en varig avsnittsinnstilling eller egenskapen THPDFPara.Direction for det aktive avsnittet
PDF/UA-avsnittssemantikk
Root := PDF.AddStructureElement('Document', nil);
Paragraph := PDF.BeginTaggedParagraph(Root, 'en-US', 'Accessible text');
PDF.CurrentPage.TextOut(36, 72, 0, WideString('Accessible text'));
PDF.EndTaggedParagraph;
PDF.BeginPaginationArtifact(pasHeader);
PDF.CurrentPage.TextOut(36, 20, 0, WideString('Running header'));
PDF.EndPaginationArtifact;
BeginTaggedParagraph sender ut en standard /P-merket innholdsssekvens med en tildelt MCID, side-foreldretre-tilkobling og valgfrie /Lang- og /ActualText-verdier
THPDFPaginationArtifactSubtype tilbyr pasHeader, pasFooter, pasWatermark og pasPageNumber, sendt ut som /Artifact-innhold med /Type /Pagination og den samsvarende standardundertypen