function DetectPageSkew(out Report: TPdfSkewReport): Boolean;
| Report | TPdfSkewReport. Tar emot SkewAngle i grader (positiv betyder medurs lutning), Confidence från 0 till 1, de för detektionen använda SampleWidth och SampleHeight, en flagga Succeeded och en ErrorMessage |
| Result | Boolean. True när en vinkel mättes, i överensstämmelse med Report.Succeeded |
Detekterar snedställningsvinkeln genom att rendera sidan i låg upplösning och projicera textpixlar på kandidatroteringsvinklar; vinkeln vars projektion ger den skarpaste radstrukturen vinner. Noggrannheten är cirka 0.1 grader
Confidence återspeglar hur mycket textlinjebevis sidan erbjöd. En sida löpande text får hög poäng; en sida med en enda rad eller ingen får låg poäng, och en låg poäng ska tolkas som "inget tillförlitligt svar" i stället för "ingen snedställning"
Detekteringen mäter endast. För att räta upp sidan, mata in den negerade vinkeln i en rotationsmatris och tillämpa den med TransformPageContent, eller rendera via RenderPageWithMatrix när endast utdata behöver korrigeras
var Report: TPdfSkewReport;
if Pdf.DetectPageSkew(Report) and (Report.Confidence > 0.5) then
ShowMessageFmt('Tilted by %.2f degrees', [Report.SkewAngle]);