Приложение A: Поддържани HTML тагове

Няколко функции в PDFlibPas приемат малък HTML поднабор за вградено форматиране на богат текст, например DrawHTMLText, DrawHTMLTextBox и различните задаващи на анотации за богат текст и клетки на таблици, които маркират текстовия си аргумент като HTML. Това приложение изброява всеки таг и атрибут, които тези анализатори разпознават. Тагове или атрибути извън този списък се премахват безшумно; околният текст се запазва

Структура на блоково ниво

<br>Твърдо прекъсване на ред
<p align="left">Абзац, подравнен вляво (по подразбиране)
<p align="center">Абзац, подравнен по средата
<p align="right">Абзац, подравнен вдясно
<p align="justified">Двустранно подравнен абзац
<ul>, <ol>, <li>Неподредени (с точки) и подредени (номерирани) списъци. <ul> и <ol> могат да се влагат един в друг

Форматиране на вградени знаци

<b>, <strong>Получер
<i>, <em>Курсив
<sup>, <sub>Горен и долен индекс
<u>Едно подчертаване
<u style="double">Двойно подчертаване
<u style="strikeout">Зачертаване (линия през текста)
<u style="over">Надчертаване (линия над текста)

Шрифт и цвят

<font size="" color="" background="" roundback="yes/no" mode="" outlinecolor="" outlinewidth="Npt">Задава вида на текста за обхванатия текст. size приема стандартен HTML размер (17) или размер в точки (11.5pt). outlinewidth трябва да е стойност в точки (1.5pt). mode избира режима на изобразяване на текста (запълване, контур, запълване+контур, невидим и т.н.). background рисува оцветен правоъгълник зад текста; roundback="yes" заобля ъглите на този правоъгълник
<span background="" roundback="yes/no">Фонов правоъгълник около обхванатия текст, без промяна на шрифта

Хипервръзки

<a href="http://...">Уеб хипервръзка (HTTP)
<a href="https://...">Уеб хипервръзка (HTTPS)
<a href="file://...">Връзка към локален файл

Запис на цветовете

RGB цветовете се записват със стандартната HTML шестнадесетична нотация с префикс #, например #3A498C. CMYK цветовете се записват като осем шестнадесетични цифри без водещия #, например 5C238F02. И двата записа се приемат навсякъде, където се очаква стойност на цвят (color, background, outlinecolor)

Бележки

Парсерът е толерантен: непознатите тагове и атрибути се премахват без предупреждение, но вътрешното текстово съдържание се запазва. Неправилно вложени тагове (например <b><i>…</b></i>) се затварят в реда на отваряне, за да остане изходът валиден. Символни препратки като &amp;, &lt;, &gt; и числовите форми (&#xNN;) се декодират

Пример

// Drawing a paragraph with mixed formatting in a table cell
var
  CellHTML: WideString;
begin
  CellHTML :=
    '<p align="center">'           +
    '<font size="14pt" color="#003366">'+
    '<b>Annual Report 2026</b>'      +
    '</font><br>'                   +
    '<font size="9pt" color="#777777">'+
    '<i>Confidential — <a href="https://example.com/legal">legal terms</a></i>'+
    '</font>'                       +
    '</p>';
  PDF.DrawHTMLTextBox(50, 750, 400, 60, CellHTML);
end;