function DetectPageSkew(out Report: TPdfSkewReport): Boolean;
| Report | TPdfSkewReport. Отримує SkewAngle у градусах (додатне значення означає нахил за годинниковою стрілкою), Confidence від 0 до 1, SampleWidth і SampleHeight, використані для виявлення, прапорець Succeeded та ErrorMessage. |
| Result | Boolean. True, коли кут виміряно, що відповідає Report.Succeeded. |
Виявляє кут нахилу, рендерячи сторінку в низькій роздільності та проєктуючи пікселі тексту на кандидатні кути обертання; перемагає кут, чия проєкція дає найчіткішу лінійну структуру. Точність становить приблизно 0.1 градуса
Confidence відображає, скільки доказів у вигляді текстових рядків надала сторінка. Сторінка зі суцільним текстом отримує високий бал; сторінка з одним рядком або без рядків — низький, і низький бал слід трактувати як «немає надійної відповіді», а не «немає нахилу»
Виявлення лише вимірює. Щоб вирівняти сторінку, подайте заперечений кут у матрицю обертання та застосуйте її через TransformPageContent або виконайте рендеринг через RenderPageWithMatrix, коли виправити потрібно лише вивід
var Report: TPdfSkewReport;
if Pdf.DetectPageSkew(Report) and (Report.Confidence > 0.5) then
ShowMessageFmt('Tilted by %.2f degrees', [Report.SkewAngle]);