Appendix A: Supported HTML tags

Renderer HTML menerima subset berbatas untuk rich text, block terstruktur, tabel, dan image yang dipetakan eksplisit

Parameter

<p>, <br>Paragraf dan hard line break, termasuk attribute perataan dan spasi paragraf legacy
<h1> through <h6>Heading block tebal dengan ukuran default yang menurun
<div>, <section>, <article>, <header>, <footer>, <main>Block containers
<blockquote>Indented block content
<ul>, <ol>, <li>List bersarang yang tidak berurut dan berurut
<b>, <strong>, <i>, <em>Teks bold dan italic
<sup>, <sub>, <u>Superskrip, subskrip, garis bawah, garis bawah ganda, coret, dan garis atas
<font>, <span>Attribute font, warna, background, outline, mode render teks, dan background membulat legacy
<a href="...">Hyperlink HTTP, HTTPS, dan file

Kaskade CSS

Aturan bisa muncul di elemen <style> atau attribute style inline

Selector mendukung tag, class, ID, kombinasi tag.class, dan kombinator descendant whitespace; selector attribute, pseudo selector, serta kombinator sibling atau anak yang tidak didukung diabaikan

Deklarasi yang cocok memakai specificity CSS dan urutan sumber, deklarasi inline lebih diutamakan, dan !important dihormati di dalam subset yang didukung

Property yang didukung mencakup property teks, background, font, dekorasi, perataan, line-height, margin, padding, border, width, height, display, dan vertical-alignment yang tercantum di bawah, ditambah property Flexbox, Grid, dan footnote di bagian masing-masing

Panjang menerima point, piksel dengan 0.75 point per piksel, satuan em, persentase, dan nilai point tanpa satuan; ukuran font juga menerima skala keyword standar dari xx-small sampai xx-large

Flexbox

display:flex dan display:inline-flex mendukung flex-direction, flex-wrap, flex, flex-grow, flex-shrink, flex-basis, justify-content, align-items, align-self, align-content, gap, row-gap, dan column-gap

Container baris membagikan ruang kosong positif dan negatif per flex line, baris yang di-wrap diukur independen, dan container kolom membagikan tinggi eksplisit atau yang diturunkan dari konten

CSS Grid

display:grid dan display:inline-grid mendukung grid-template-columns, grid-template-rows, track tetap, persentase, dan fr, repeat() dan minmax() sederhana, grid-column, grid-row, properti start dan end, span, gap, auto-placement baris atau kolom, serta perataan per item

Satu container menerima maksimum 256 item langsung dan 64 baris atau kolom; konten bersarang memakai renderer HTML dan layout cache yang sama

Catatan kaki

<footnote>, <aside style="float:footnote">, dan <aside role="doc-footnote"> membuat catatan bernomor

Text box berukuran pasti mereservasi area catatan di bagian bawah sebelum menata baris isi berikutnya; referensi dan catatan yang tidak muat bersamaan berlanjut ke frame berikutnya, dan state kelanjutannya mempertahankan penomoran

Tabel

<table>, <tr>, <td>, dan <th> merender baris terukur dengan background, padding, border, gaya teks, dan colspan hingga 64 kolom

Kolom membagi lebar tabel eksplisit atau lebar yang tersedia secara sama rata, cell header default-nya teks tebal dengan background terang, dan satu baris berlanjut sebagai satu unit atomik di text box HTML berikutnya

Tabel bersarang, rowspan, border collapsing, dan sizing kolom otomatis berbasis konten bukan bagian dari subset ini

Gambar

<img src="name"> menggambar image yang sebelumnya diikat SetHTMLImage

Renderer mendukung width, height, margin, padding, border, background, dan perataan kiri, tengah, atau kanan; satu dimensi yang hilang mempertahankan aspect ratio alami, dan dimensi yang dihilangkan memakai 0.75 point per piksel sumber

Sumber image tidak pernah memicu akses network atau file, pengukuran tidak mendaftarkan resource, dan pemakaian berulang memakai ulang image XObject yang terikat

Batas dan pemulihan

Satu input HTML menerima maksimum 2048 aturan stylesheet, 256 byte per selector, 4096 byte per block deklarasi, 4096 baris tabel, dan 4096 cell tabel

Properti, selector, tag, dan attribute yang tidak dikenal diabaikan sementara teks di sekitarnya dipertahankan; referensi karakter didekode dan nesting salah bentuk ditutup secara konservatif

Contoh

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;