Appendix A: Supported HTML tags
Izrisovalnik HTML sprejme omejeno podmnožico za bogato besedilo, strukturirane bloke, tabele in izrecno preslikane slike
Parametri
<p>, <br> | odstavki in trdi prelomi vrstic, vključno z zastarelimi atributi poravnave in razmikov odstavkov |
|---|---|
<h1> through <h6> | krepki naslovi blokov s padajočimi privzetimi velikostmi |
<div>, <section>, <article>, <header>, <footer>, <main> | blokovni vsebniki |
<blockquote> | zamaknjena vsebina blokov |
<ul>, <ol>, <li> | gnezdni neštevilčeni in številčeni seznami |
<b>, <strong>, <i>, <em> | krepko in ležeče besedilo |
<sup>, <sub>, <u> | nadvpisano, podpisano, podčrtano, dvojno podčrtano, prečrtano in prečrtano nad vrstico |
<font>, <span> | Podedovani atributi pisave, barve, ozadja, orisa, načina upodabljanja besedila in zaobljenega ozadja |
<a href="..."> | hiperpovezave HTTP, HTTPS in datotečne |
CSS kaskada
Pravila so lahko v elementih <style> ali v vrstičnih atributih style
Izbirniki podpirajo kombinacije tag, class, ID, tag.class in potomcev presledka; nepodprti izbirniki atributov, psevdo izbirniki in kombinatorske sestre ali podrejenci se ignorirajo
Ujemajoče napovedi uporabljajo specifičnost CSS in vrstni red vira, vgrajene napovedi imajo prednost, !important pa se spoštuje znotraj podprte podmnožice
Podprte lastnosti vključujejo lastnosti besedila, ozadja, pisave, okrasitve, poravnave, višine vrstice, roba, blazinjenja, robov, širine, višine, prikaza in navpične poravnave, naštete spodaj, plus lastnosti Flexbox, Grid in sprotnih opomb v njihovih ustreznih razdelkih
Dolžine sprejemajo točke, slikovne točke pri 0,75 točke na slikovno točko, enote em, odstotke in vrednosti točk brez enot; velikosti pisav sprejemajo tudi standardno lestvico ključnih besed od xx-small do xx-large
Flexbox
display:flex in display:inline-flex podpirata flex-direction, flex-wrap, flex, flex-grow, flex-shrink, flex-basis, justify-content, align-items, align-self, align-content, gap, row-gap in column-gap
Vrstični vsebniki razporedijo pozitiven in negativen prosti prostor na flex vrstico, prelomljene vrstice se merijo neodvisno, stolpčni vsebniki pa razporedijo izrecno ali iz vsebine izpeljano višino
CSS Grid
display:grid in display:inline-grid podpirata grid-template-columns, grid-template-rows, fiksne, odstotne in fr proge, preprost repeat() in minmax(), grid-column, grid-row, lastnosti start in end, razpone, razmike, samodejno postavitev po vrsticah ali stolpcih in poravnavo na element
En vsebnik sprejme največ 256 neposrednih elementov in 64 vrstic ali stolpcev; gnezdena vsebina uporablja isti izrisovalnik HTML in predpomnilnik postavitve
Sprotne opombe
<footnote>, <aside style="float:footnote"> in <aside role="doc-footnote"> ustvarjajo številčene opombe
Končni besedilni okvirji območje opombe rezervirajo na dnu, preden postavijo kasnejše vrstice telesa; sklic in opomba, ki skupaj ne prilegata, se nadaljujeta v naslednji okvir, stanje nadaljevanja pa ohrani številčenje
Tabele
<table>, <tr>, <td> in <th> upodobijo izmerjene vrstice z ozadji, oblazinjenjem, robovi, besedilnimi slogi in colspan do 64 stolpcev
Stolpci enakomerno delijo izrecno širino tabele ali razpoložljivo širino, celice glave so privzeto krepko besedilo s svetlim ozadjem, vrstica pa se v naslednjem besedilnem okvirju HTML nadaljuje kot ena atomska enota
Gnezdene tabele, rowspan, strnjevanje robov in samodejno določanje širine stolpcev na osnovi vsebine niso del te podmnožice
Slike
<img src="name"> izriše sliko, prej povezano s SetHTMLImage
Izrisovalnik podpira širino, višino, rob, blazinjenje, robove, ozadje ter poravnavo levo, sredinsko ali desno; ena manjkajoča mera ohrani naravno razmerje stranic, izpuščeni meri pa uporabita 0,75 točke na izvorno piko
Slikovni viri nikoli ne sprožijo omrežnega ali datotečnega dostopa, merjenje ne registrira virov, ponovljena uporaba pa ponovno uporabi vezani slikovni XObject
Meje in obnovitev
En vnos HTML sprejme največ 2048 pravil stilov, 256 bajtov na izbirnik, 4096 bajtov na blok deklaracij, 4096 vrstic tabel in 4096 celic tabel
Neznane lastnosti, izbirniki, oznake in atributi se ignorirajo, medtem ko se okoliško besedilo ohrani; znakovne reference se dekodirajo in nepravilno gnezdenje se previdno zapre
Primer
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;