Візуальна діагностика макета

HotPDF може зберігати обмежені рішення макета, виявляти перекривні розміщені елементи, малювати нативні векторні накладення, приєднувати надані викликаючим кодом розташування джерела та публікувати синхронні сповіщення попереднього перегляду

Безпечні значення за замовчуванням

THPDFLayoutDiagnosticOptions.Default зберігає шляхи елементів, тоді як захоплення розташування джерела, виявлення перекривань, PDF-накладення та живі зворотні виклики вимкнені за замовчуванням

Жодне ім'я файлу джерела чи вміст накладення не потрапляє в згенерований PDF, якщо відповідний параметр не ввімкнено явно

Увімкнення візуальної діагностики

Options := THPDFLayoutDiagnosticOptions.Default;
Options.CaptureSourceLocation := True;
Options.DetectOverlaps := True;
Options.DrawOverlays := True;
Options.LivePreview := True;
PDF.LayoutDiagnosticOptions := Options;
PDF.OnLayoutDiagnostic := HandleLayoutDiagnostic;

Element.SetDiagnosticSource('invoice_layout.pas', 73, 9);

SetDiagnosticSource зберігає необов'язковий файл, рядок і стовпець на THPDFLayoutElement; ClearDiagnosticSource видаляє відображення

Продовження декларативного макета копіюють відображення, щоб зберегти стабільну точку виклику через розділення сторінок

Записи діагностики

THPDFLayoutDiagnostic містить ElementPath, RelatedElementPath, SourceFile, SourceLine і SourceColumn на додаток до своєї сторінки, прямокутника, кількості рядків, типу та причини

ldkOverlap ідентифікує перетин двох успішно розміщених елементів, тоді як ldkOverflow ідентифікує елемент, який не вмістився в наданих межах

Векторні накладення та живий попередній перегляд

Прямокутники переповнення використовують червоний штрих, а прямокутники перекривання — помаранчевий, із необов'язковими мітками, контрольованими ShowOverlayLabels

Накладення — це нативні шляхи та текст PDF, а не растрові зображення

THPDFLayoutDiagnosticEvent отримує кожен збережений запис діагностики синхронно після необов'язкового малювання накладення, коли ввімкнено LivePreview

Бюджети та статистика

MaxTrackedBounds обмежує збережені прямокутники розміщення, а MaxOverlapComparisons обмежує роботу перетинів протягом діагностичного інтервалу

THPDFLayoutDiagnosticStatistics повідомляє збережені та відкинуті діагностики, відстежені та відкинуті межі, порівняння та знахідки перекривань, намальвані накладення та живі сповіщення

ClearLayoutDiagnostics скидає записи, відстеження розміщення та всі пов'язані лічильники

Пов'язані API