Vizuální diagnostika rozvržení
Vizuální diagnostika rozvržení zpřístupňuje umístění, hranice, rozdělení a rozhodnutí o zalomení stránek vykreslovače rozvržení
Bezpečné defaulty
THPDFLayoutDiagnosticOptions.Default zachovává cesty elementů, zatímco zachytávání zdrojových umístění, detekce překryvů, PDF overlaye a živé callbacky jsou defaultně vypnuté
Data jsou určena pro vývoj a testování a zachovávají pořadí komponent, stránek a pokračování
Zapnutí vizuální diagnostiky
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 ukládá volitelný soubor, řádek a sloupec na THPDFLayoutElement; ClearDiagnosticSource mapování odstraní
Pokračování deklarativního rozvržení kopírují mapování, aby zachovala stabilní call site napříč rozdělením stránek
Diagnostické záznamy
THPDFLayoutDiagnostic obsahuje kromě stránky, obdélníku, počtu čar, druhu a důvodu také ElementPath, RelatedElementPath, SourceFile, SourceLine a SourceColumn
ldkOverlap identifikuje průnik dvou úspěšně umístěných elementů, zatímco ldkOverflow identifikuje element, který se nevešel do dodaných mezí
Vektorové overlaye a živý náhled
Obdélníky overflow používají červený tah a obdélníky překryvů oranžový tah, s volitelnými popisky řízenými přes ShowOverlayLabels
Overlaye jsou nativní cesty a text PDF, nikoli rastrové obrázky
THPDFLayoutDiagnosticEvent přijímá každý zachovaný diagnostický záznam synchronně po volitelném kreslení overlayů, když je zapnuté LivePreview
Rozpočty a statistiky
MaxTrackedBounds ohraničuje zachované umístovací obdélníky a MaxOverlapComparisons ohraničuje práci průniků napříč diagnostickým intervalem
THPDFLayoutDiagnosticStatistics hlásí zachované a zahozené diagnostiky, sledované a zahozené meze, porovnání a nálezy překryvů, nakreslené overlaye a živá notifikace
ClearLayoutDiagnostics vynuluje záznamy, sledování umístění a všechna související počítadla