PDFium Component Docs

DetectPageSkew functie

Component: TPdf  ·  Unit: PDFium
Meet hoe ver de huidige pagina scheef staat, zoals bij gescande pagina's gebruikelijk is

Syntax

function DetectPageSkew(out Report: TPdfSkewReport): Boolean;

ReportTPdfSkewReport. Ontvangt SkewAngle in graden (positief betekent een draai met de klok mee), Confidence van 0 tot 1, de voor detectie gebruikte SampleWidth en SampleHeight, een Succeeded-vlag en een ErrorMessage
ResultBoolean. True wanneer een hoek is gemeten, overeenkomend met Report.Succeeded

Description

Detecteert de scheefstandhoek door de pagina op lage resolutie te renderen en tekstpixels op kandidaat-rotatiehoeken te projecteren; de hoek waarvan de projectie de scherpste lijnstructuur oplevert wint. De nauwkeurigheid is ongeveer 0.1 graden

Confidence weerspiegelt hoeveel bewijs aan tekstregels de pagina bood. Een pagina met lopende tekst scoort hoog; een pagina met één regel of zonder regels scoort laag, en een lage score moet worden opgevat als "geen betrouwbaar antwoord" in plaats van "geen scheefstand"

Detectie meet alleen. Om de pagina recht te zetten, voert u de tegengestelde hoek in een rotatiematrix in en past u deze toe met TransformPageContent, of rendert u via RenderPageWithMatrix wanneer alleen de uitvoer gecorrigeerd hoeft te worden

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