Appendix A: Supported HTML tags

ה-renderer של ה-HTML מקבל תת-קבוצה מוגבלת עבור טקסט עשיר, בלוקים מובנים, טבלאות ותמונות ממופות במפורש

פרמטרים

<p>, <br>פסקאות ומעברי שורה קשיחים, כולל מאפייני יישור וריווח פסקאות מהדורות הקודמות
<h1> through <h6>כותרות בלוק מודגשות עם גדלים יורדים כברירת מחדל
<div>, <section>, <article>, <header>, <footer>, <main>Block containers
<blockquote>תוכן של בלוק מוזח
<ul>, <ol>, <li>רשימות מסודרות ולא מסודרות מקוננות
<b>, <strong>, <i>, <em>טקסט מודגש ונטוי
<sup>, <sub>, <u>עילי, תחתי, קו תחתון, קו תחתון כפול, קו חוצה וקו עליון
<font>, <span>מאפייני גופן, צבע, רקע, קו מתאר, מצב עיבוד טקסט ורקע מעוגל מהדורות הקודמות
<a href="...">היפר-קישורי HTTP, HTTPS וקבצים

מפל CSS

Rules may appear in <style> elements or inline style attributes

סלקטורים תומכים בתג, מחלקה, מזהה, tag.class וקומבינציות צאצא מופרדות רווח; סלקטורי מאפיינים, סלקטורי pseudo וקומבינטורים של אח או צאצא שאינם נתמכים מתעלמים

הצהרות תואמות משתמשות ב-CSS specificity ובסדר המקור, הצהרות inline מקבלות עדיפות, ו-!important מכובד בתוך תת-הקבוצה הנתמכת

המאפיינים הנתמכים כוללים את מאפייני הטקסט, הרקע, הגופן, הקישוט, היישור, גובה-השורה, השוליים, הריפוד, הגבול, הרוחב, הגובה, ה-display והיישור-האנכי המפורטים להלן, ובנוסף את מאפייני Flexbox, Grid והערות-השוליים בסעיפיהם המתאימים

אורכים מקבלים נקודות, פיקסלים בקצב של 0.75 נקודות לפיקסל, יחידות em, אחוזים וערכי נקודות ללא יחידה; גדלי גופן מקבלים גם את סולם מילות המפתח הסטנדרטי מ-xx-small עד xx-large

Flexbox

display:flex ו-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 ו-column-gap

מכלי שורות מחלקים שטח פנוי חיובי ושלילי לכל שורת flex, שורות עטופות נמדדות באופן עצמאי, ומכלי עמודות מחלקים גובה מפורש או הנגזר מהתוכן

CSS Grid

display:grid ו-display:inline-grid תומכים ב-grid-template-columns, grid-template-rows, מסילות קבועות, אחוזיות ו-fr, repeat() ו-minmax() פשוטים, grid-column, grid-row, מאפייני התחלה וסיום, spans, gaps, מיקום אוטומטי של שורה או עמודה, ויישור לכל פריט

מכולה אחת מקבלת לכל היותר 256 פריטים ישירים ו-64 שורות או עמודות; תוכן מקונן משתמש באותו מנוע HTML ובאותו מטמון פריסה

הערות שוליים

<footnote>, <aside style="float:footnote">, ו-<aside role="doc-footnote"> יוצרים הערות שוליים ממוספרות

תיבות טקסט סופיות שומרות את אזור ההערה בתחתית לפני סידור שורות הגוף שיבואו; הפניה והערה שאינם נכנסים יחד ממשיכים אל המסגרת הבאה, ומצב ההמשך שומר על המספור

טבלאות

<table>, <tr>, <td>, ו-<th> מעבדים שורות נמדדות עם רקעים, ריפוד, גבולות, סגנונות טקסט ו-colspan עד 64 עמודות

העמודות מחלקות את רוחב הטבלה המפורש או הרוחב הזמין באופן שווה, תאי ה-Header מוגדרים כברירת מחדל לטקסט מודגש עם רקע בהיר, ושורה ממשיכה כיחידה אטומית אחת בתיבת ה-HTML הבאה

טבלאות מקוננות, rowspan, איחוד גבולות ושינוי גודל אוטומטי של עמודות לפי התוכן אינם חלק מתת-הקבוצה הזו

תמונות

<img src="name"> מצייר תמונה שנקשרה קודם באמצעות SetHTMLImage

הרנדרר תומך ב-width, height, margin, padding, border, background וביישור left, center או right; ממד חסר אחד משמר את יחס הגובה-רוחב הטבעי, וממדים שלא צוינו משתמשים ב-0.75 נקודות לכל פיקסל מקור

מקורות תמונה לעולם לא מפעילים גישה לרשת או לקבצים, המדידה אינה רושמת משאבים, ושימוש חוזר עושה שימוש חוזר ב-XObject התמונה המשויך

גבולות ושחזור

קלט HTML אחד מקבל לכל היותר 2048 כללי stylesheet, 256 בייטים ל-selector, 4096 בייטים לבלוק הצהרות, 4096 שורות טבלה ו-4096 תאי טבלה

מאפיינים, selectors, תגיות ומאפיינים לא מוכרים מתעלמים בזמן שהטקסט הסובב נשמר; הפניות תווים מפוענחות וקינון פגום נסגר בצורה שמרנית

דוגמה

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;