function DetectPageSkew(out Report: TPdfSkewReport): Boolean;
| Report | TPdfSkewReport. 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 |
| Result | Boolean. True wanneer een hoek is gemeten, overeenkomend met Report.Succeeded |
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
var Report: TPdfSkewReport;
if Pdf.DetectPageSkew(Report) and (Report.Confidence > 0.5) then
ShowMessageFmt('Tilted by %.2f degrees', [Report.SkewAngle]);