Appendix A: Supported HTML tags

HTML işleyicisi zengin metin, yapılandırılmış bloklar, tablolar ve açıkça eşlenmiş görüntüler için sınırlı bir alt kümeyi kabul eder

Parametreler

<p>, <br>Eski paragraf hizalama ve aralık öznitelikleri dâhil paragraflar ve sabit satır sonları
<h1> through <h6>Azalan varsayılan boyutlara sahip kalın blok başlıkları
<div>, <section>, <article>, <header>, <footer>, <main>Blok kapsayıcıları
<blockquote>Girintili blok içeriği
<ul>, <ol>, <li>İç içe sırasız ve sıralı listeler
<b>, <strong>, <i>, <em>Kalın ve italik metin
<sup>, <sub>, <u>Üst simge, alt simge, altı çizili, çift altı çizili, üstü çizili ve üstten çizgili
<font>, <span>Eski yazı tipi, renk, arka plan, ana hat, metin işleme modu ve yuvarlatılmış arka plan öznitelikleri
<a href="...">HTTP, HTTPS ve dosya köprüleri

CSS basamaklandırması

Kurallar <style> öğelerinde veya satır içi style özniteliklerinde bulunabilir

Seçiciler etiket, sınıf, kimlik, tag.class ve boşlukla ayrılmış alt öğe birleşimlerini destekler; desteklenmeyen öznitelik seçicileri, sözde seçiciler ve kardeş ya da alt öğe birleştiricileri yok sayılır

Eşleşen bildirimler CSS özgüllüğünü ve kaynak sırasını kullanır, satır içi bildirimler önceliklidir ve desteklenen alt kümede !important dikkate alınır

Desteklenen özellikler aşağıda listelenen metin, arka plan, font, süsleme, hizalama, satır yüksekliği, kenar boşluğu, dolgu, kenarlık, genişlik, yükseklik, görüntüleme ve dikey hizalama özellikleri ile kendi bölümlerindeki Flexbox, Grid ve dipnot özelliklerini içerir

Uzunluklar nokta, piksel başına 0.75 noktada piksel, em birimleri, yüzdeler ve birimsiz nokta değerlerini kabul eder; yazı tipi boyutları ayrıca xx-small ile xx-large arasındaki standart anahtar sözcük ölçeğini kabul eder

Flexbox

display:flex ve display:inline-flex, flex-direction, flex-wrap, flex, flex-grow, flex-shrink, flex-basis, justify-content, align-items, align-self, align-content, gap, row-gap ve column-gap özelliklerini destekler

Satır kapsayıcıları her esnek satır için pozitif ve negatif boş alanı dağıtır, kaydırılan satırlar bağımsız olarak ölçülür ve sütun kapsayıcıları açık ya da içerikten türetilen yüksekliği dağıtır

CSS Grid

display:grid ve display:inline-grid; grid-template-columns, grid-template-rows, sabit, yüzde ve fr izlerini, basit repeat() ve minmax() yapılarını, grid-column, grid-row, başlangıç ve bitiş özelliklerini, yayılmaları, boşlukları, satır veya sütun otomatik yerleştirmeyi ve öğe başına hizalamayı destekler

Bir kapsayıcı en fazla 256 doğrudan öğe ve 64 satır veya sütun kabul eder; iç içe içerik aynı HTML işleyicisini ve yerleşim önbelleğini kullanır

Dipnotlar

<footnote>, <aside style="float:footnote"> ve <aside role="doc-footnote"> numaralandırılmış notlar oluşturur

Sonlu metin kutuları, sonraki gövde satırlarını yerleştirmeden önce alttaki not alanını ayırır; birlikte sığmayan bir başvuru ve not sonraki çerçevede devam eder ve devam durumu numaralandırmayı korur

Tablolar

<table>, <tr>, <td> ve <th>; arka planlar, dolgu, kenarlıklar, metin stilleri ve 64 sütuna kadar colspan içeren ölçülmüş satırları işler

Sütunlar açık tablo genişliğini veya kullanılabilir genişliği eşit böler, başlık hücreleri varsayılan olarak açık arka planlı kalın metin kullanır ve satır sonraki HTML metin kutusunda tek bir atomik birim olarak devam eder

İç içe tablolar, rowspan, kenarlık birleştirme ve içeriğe göre otomatik sütun boyutlandırma bu alt kümenin parçası değildir

Görüntüler

<img src="name">, daha önce SetHTMLImage ile bağlanmış bir görüntüyü çizer

İşleyici genişlik, yükseklik, kenar boşluğu, dolgu, kenarlık, arka plan ve sol, orta veya sağ hizalamayı destekler; tek bir eksik boyut doğal en-boy oranını korur, atlanan boyutlar ise kaynak piksel başına 0,75 punto kullanır

Görüntü kaynakları hiçbir zaman ağ veya dosya erişimini tetiklemez, ölçüm kaynak kaydetmez ve yinelenen kullanım bağlı görüntü XObject'ini yeniden kullanır

Sınırlar ve kurtarma

Tek bir HTML girdisi en fazla 2048 stil sayfası kuralı, seçici başına 256 bayt, bildirim bloğu başına 4096 bayt, 4096 tablo satırı ve 4096 tablo hücresi kabul eder

Bilinmeyen özellikler, seçiciler, etiketler ve öznitelikler yok sayılırken çevreleyen metin korunur; karakter başvuruları çözümlenir ve hatalı iç içe geçme ihtiyatlı biçimde kapatılır

Örnek

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;