Appendix A: Supported HTML tags

HTML-rendereren godtar en avgrenset delmengde for rik tekst, strukturerte blokker, tabeller og eksplisitt kartlagte bilder

Parametere

<p>, <br>Avsnitt og harde linjeskift, inkludert eldre attributter for avsnittjustering og avstand
<h1> through <h6>Fete blokkoverskrifter med synkende standardstørrelser
<div>, <section>, <article>, <header>, <footer>, <main>Block containers
<blockquote>Indented block content
<ul>, <ol>, <li>Nestede punktlister og nummererte lister
<b>, <strong>, <i>, <em>Fet og kursiv tekst
<sup>, <sub>, <u>Hevet, senket, understreking, dobbel understreking, gjennomstreking og overstreking
<font>, <span>Eldre skrift-, farge-, bakgrunns-, omriss-, tekstrenderingsmodus- og avrundet bakgrunn-attributter
<a href="...">HTTP-, HTTPS- og filhyperkoblinger

CSS-kaskade

Regler kan forekomme i <style>-elementer eller inline style-attributter

Velgere støtter tagg, klasse, ID, tag.class og mellomromsatskiltede etterkomber-kombinasjoner; ustøttede attributtvelgere, pseudovelgere og søsken- eller barn-kombinatorer ignoreres

Samsvarende deklarasjoner bruker CSS-spesifisitet og kildeorden, inline-deklarasjoner har forrang, og !important æres innenfor den støttede delmengden

Støttede egenskaper inkluderer tekst-, bakgrunns-, skrifttype-, dekorasjons-, justerings-, linjehøyde-, marg-, utfyllings-, kant-, bredde-, høyde-, display- og vertikaljusteringsegenskapene listet nedenfor, pluss Flexbox-, Grid- og fotnoteegenskapene i deres respektive seksjoner

Lengder godtar punkter, piksler à 0,75 punkter per piksel, em-enheter, prosenter og enhetsløse punktverdier; skriftstørrelser godtar også standard nøkkelskala fra xx-small til xx-large

Flexbox

display:flex og display:inline-flex støtter flex-direction, flex-wrap, flex, flex-grow, flex-shrink, flex-basis, justify-content, align-items, align-self, align-content, gap, row-gap og column-gap

Rad-containere fordeler positiv og negativ ledig plass per flex-linje, ombrutte rader måles uavhengig, og kolonne-containere fordeler en eksplisitt eller innholdsavledet høyde

CSS Grid

display:grid og display:inline-grid støtter grid-template-columns, grid-template-rows, faste, prosentvise og fr-spor, enkel repeat() og minmax(), grid-column, grid-row, start- og sluttegenskaper, spenn, mellomrom, automatisk plassering per rad eller kolonne, og justering per element

Én container godtar høyst 256 direkte elementer og 64 rader eller kolonner; nestet innhold bruker samme HTML-renderer og layout-cache

Fotnoter

<footnote>, <aside style="float:footnote"> og <aside role="doc-footnote"> oppretter nummererte notater

Endelige tekstbokser reserverer notatområdet i bunnen før senere brødtekstlinjer legges ut; en referanse og et notat som ikke får plass sammen fortsetter til neste ramme, og fortsettelsestilstanden bevarer nummereringen

Tabeller

<table>, <tr>, <td> og <th> renderer målte rader med bakgrunner, utfylling, kanter, tekststiler og colspan opptil 64 kolonner

Kolonner deler den eksplisitte tabellbredden eller tilgjengelige bredde likt, overskriftsceller bruker som standard fet tekst med lys bakgrunn, og en rad fortsetter som én atomisk enhet i neste HTML-tekstboks

Nestede tabeller, rowspan, kantsammenslåing og automatisk innholdsdrevet kolonnedimensjonering er ikke en del av denne delmengden

Bilder

<img src="name"> tegner et bilde som tidligere ble bundet med SetHTMLImage

Rendereren støtter bredde, høyde, marg, utfylling, kant, bakgrunn og venstre, senter eller høyre justering; én manglende dimensjon bevarer det naturlige sideforholdet, og utelatte dimensjoner bruker 0,75 punkter per kildepiksel

Bildekilder utløser aldri nettverks- eller filtilgang, måling registrerer ikke ressurser, og gjentatt bruk gjenbruker det bundne bilde-XObject-et

Grenser og gjenoppretting

Én HTML-inngang godtar høyst 2048 stilarkregler, 256 byte per velger, 4096 byte per deklarasjonsblokk, 4096 tabellrader og 4096 tabellceller

Ukjente egenskaper, velgere, tagger og attributter ignoreres mens omkringliggende tekst bevares; tegnreferanser dekodes, og feilformet nesting lukkes konservativt

Eksempel

var
  LogoID: Integer;
begin
  LogoID := PDF.AddImageFromFile('logo.png');
  PDF.SetHTMLImage('brand-logo', LogoID);
  PDF.DrawHTMLTextBox(50, 750, 420, 180,
    '<style>.report h2 { color:#204080; } table { border:1pt solid #808080; }</style>' +
    '<section class="report"><h2>Quarterly report</h2>' +
    '<img src="brand-logo" width="72pt">' +
    '<table><tr><th>Region</th><th>Total</th></tr>' +
    '<tr><td>North</td><td>125</td></tr></table></section>');
end;