Diagnóstico visual de layout

HotPDF puede conservar decisiones de layout acotadas, detectar elementos colocados que se superponen, dibujar overlays vectoriales nativos, adjuntar ubicaciones de origen proporcionadas por el llamador y publicar notificaciones síncronas de vista previa

Valores predeterminados seguros

THPDFLayoutDiagnosticOptions.Default conserva las rutas de elementos, mientras que la captura de ubicación de origen, la detección de superposiciones, los overlays en PDF y los callbacks en vivo quedan deshabilitados de forma predeterminada

Ningún nombre de archivo de origen ni contenido de overlay entra al PDF generado a menos que la opción correspondiente se habilite explícitamente

Habilitar el diagnóstico visual

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 almacena de forma opcional un archivo, una línea y una columna en un THPDFLayoutElement; ClearDiagnosticSource elimina ese mapeo

Las continuaciones declarativas de layout copian el mapeo para mantener un sitio de llamada estable entre divisiones de página

Registros de diagnóstico

THPDFLayoutDiagnostic incluye ElementPath, RelatedElementPath, SourceFile, SourceLine y SourceColumn, además de su página, rectángulo, conteo de líneas, tipo y motivo

ldkOverlap identifica una intersección entre dos elementos colocados con éxito, mientras que ldkOverflow identifica un elemento que no cupo dentro de los límites proporcionados

Overlays vectoriales y vista previa en vivo

Los rectángulos de desborde usan un trazo rojo y los rectángulos de superposición usan un trazo naranja, con etiquetas opcionales controladas por ShowOverlayLabels

Los overlays son paths y texto nativos de PDF, no imágenes rasterizadas

THPDFLayoutDiagnosticEvent recibe cada diagnóstico retenido de forma síncrona después del dibujo opcional de overlays cuando LivePreview está habilitado

Presupuestos y estadísticas

MaxTrackedBounds acota los rectángulos de colocación retenidos y MaxOverlapComparisons acota el trabajo de intersección a lo largo del intervalo de diagnóstico

THPDFLayoutDiagnosticStatistics informa los diagnósticos retenidos y descartados, los límites rastreados y descartados, las comparaciones y hallazgos de superposiciones, los overlays dibujados y las notificaciones en vivo

ClearLayoutDiagnostics reinicia los registros, el seguimiento de colocaciones y todos los contadores relacionados

APIs relacionadas