PDFium Component Docs

DetectPageSkew Método

Componente: TPdf  ·  Unidad: PDFium
Mide cuánto está inclinada la página actual, como suelen estarlo las páginas escaneadas

Syntax

function DetectPageSkew(out Report: TPdfSkewReport): Boolean;

ReportTPdfSkewReport. Recibe SkewAngle en grados (positivo significa inclinación en sentido horario), Confidence de 0 a 1, el SampleWidth y el SampleHeight usados para la detección, un indicador Succeeded y un ErrorMessage
ResultBoolean. True cuando se midió un ángulo, coincidiendo con Report.Succeeded

Description

Detecta el ángulo de inclinación renderizando la página a baja resolución y proyectando los píxeles de texto sobre ángulos de rotación candidatos; gana el ángulo cuya proyección produce la estructura de líneas más nítida. La precisión es de aproximadamente 0.1 grados

Confidence refleja cuánta evidencia de líneas de texto ofreció la página. Una página de texto corrido puntúa alto; una página con una sola línea o sin ninguna puntúa bajo, y una puntuación baja debe tratarse como "sin respuesta confiable" y no como "sin inclinación"

La detección solo mide. Para enderezar la página, introduzca el ángulo negado en una matriz de rotación y aplíquela con TransformPageContent, o renderice mediante RenderPageWithMatrix cuando solo la salida necesita corregirse

Example

var Report: TPdfSkewReport;
if Pdf.DetectPageSkew(Report) and (Report.Confidence > 0.5) then
  ShowMessageFmt('Tilted by %.2f degrees', [Report.SkewAngle]);

See Also

TransformPageContent, RenderPageWithMatrix, ApplyOcrSearchLayer, PageRotation