如何检测页面旋转

This article was translated from English: Does it need improvement?
Translated
View the article in English

查克尼特·宾

确定页面旋转涉及识别文档中页面的旋转程度。这一过程具体确定页面是顺时针还是逆时针旋转了 0、90、180 和 270 度。这一信息对于准确渲染或处理文档至关重要,可确保页面以正确的方向显示或打印。

IronOCR 将页面旋转检测提升到了一个新的水平。一旦检测到旋转,返回的值可与 Rotate 方法结合使用,将图像调整到正确的方向。


适用于OCR的C# NuGet库

安装使用 NuGet

Install-Package IronOcr
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

适用于OCR的C# NuGet库

安装使用 NuGet

Install-Package IronOcr
Java PDF JAR

下载 DLL

下载DLL

手动安装到你的项目中

开始在您的项目中使用IronPDF,并立即获取免费试用。

第一步:
green arrow pointer

查看 IronOCRNuget 用于快速安装和部署。它有超过800万次下载,正在使用C#改变OCR。

适用于OCR的C# NuGet库 nuget.org/packages/IronOcr/
Install-Package IronOcr

考虑安装 IronOCR DLL 直接。下载并手动安装到您的项目或GAC表单中: IronOcr.zip

手动安装到你的项目中

下载DLL

检测页面旋转示例

加载文档后,可以使用 DetectPageOrientation 方法来识别每一页的旋转。该方法支持 0、90、180 和 270 度。对于倾斜的图像,可使用 Deskew 图像校正方法。随后,使用函数返回的度数将图像旋转回原始方向。让我们继续 PDF 样本.

请注意
当文档文本密集时,该功能表现良好。

:path=/static-assets/ocr/content-code-examples/how-to/detect-page-rotation-detect-page-rotation.cs
using IronOcr;
using System;

using var input = new OcrInput();

// Load PDF document
input.LoadPdf("Clockwise90.pdf");

// Detect page rotation
var results = input.DetectPageOrientation();

// Ouput result
foreach(var result in results)
{
    Console.WriteLine(result.PageNumber);
    Console.WriteLine(result.HighConfidence);
    Console.WriteLine(result.RotationAngle);
}
Imports IronOcr
Imports System

Private input = New OcrInput()

' Load PDF document
input.LoadPdf("Clockwise90.pdf")

' Detect page rotation
Dim results = input.DetectPageOrientation()

' Ouput result
For Each result In results
	Console.WriteLine(result.PageNumber)
	Console.WriteLine(result.HighConfidence)
	Console.WriteLine(result.RotationAngle)
Next result
VB   C#

了解结果

  • PageNumber:表示页面的零基索引。
  • RotationAngle:提供以度为单位的纠正旋转角度。此角度可应用于 Rotate 方法,以返回图像的右旋。例如,如果图像顺时针旋转 90 度,返回的角度将是 270,然后可以将该角度作为 input.Rotate 方法传递给 Rotate 方法。(旋转角度)`.

  • 高置信度:表示对定向结果的信任程度。

查克尼特·宾

软件工程师

Chaknith 是开发者中的福尔摩斯。他第一次意识到自己可能在软件工程方面有前途,是在他出于乐趣做代码挑战的时候。他的重点是 IronXL 和 IronBarcode,但他为能帮助客户解决每一款产品的问题而感到自豪。Chaknith 利用他从直接与客户交谈中获得的知识,帮助进一步改进产品。他的轶事反馈不仅仅局限于 Jira 票据,还支持产品开发、文档编写和市场营销,从而提升客户的整体体验。当他不在办公室时,他可能会在学习机器学习、编程或徒步旅行。