IRONSOFTWAREHOME

Windows Forms TextBox中的不正确换行

Curtis Chau
Curtis Chau
Updated: 2026年6月29日

使用IronOCR提取的OCR文本在Windows Forms TextBox显示时可能丢失其换行,导致其比源图像线更少。

原因是换行符不匹配。 IronOCR返回的换行是裸换行符(\n),但Windows Forms \r\n)时才渲染换行。 没有回车符,控件会忽略换行。

OCR针对下面这样的源图像运行:

向IronOCR传递以提取文本的源图像

将原始OCR结果直接绑定到控件会将文本折叠到几行,而不是保留原始布局:

Windows Forms应用程序显示OCR文本,换行合并为两行

解决方案

1. 在64位模式下使用AdvancedScan

安装IronOcr.Extensions.AdvancedScan包以获得更可靠的提取,并在64位模式下运行应用程序以避免兼容性问题。

<PackageReference Include="IronOcr.Extensions.AdvancedScan" />
XML

2. 正规化行结束符

在将文本分配给控件之前,将结果中的每个\r\n

ocr.Language = OcrLanguage.ChineseSimplifiedBest;
using (var ocrInput = new OcrInput())
{
    ocrInput.LoadImage(txtPath.Text);
    ocrInput.Deskew();
    var result = ocr.ReadScreenShot(ocrInput);
    // Replace line feed with carriage return and line feed
    string ocrText = result.Text.Replace("\n", "\r\n");
    // Display the corrected text in a TextBox
    textBox1.Text = ocrText;
}
C#

TextBox所期望的回车/换行符对,因此显示的文本保持与原始图像相同的行结构。

3. 验证输出

再次运行提取并将TextBox内容与源图像进行比较。 换行现在应该与原始布局对齐。

Windows Forms应用程序显示OCR文本,其换行正确保留

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

...
阅读更多

准备开始了吗?

Nuget Downloads 6,254,007版本:2026.9刚刚发布

立即获取您的免费30 天试用密钥
无需信用卡或创建账户
Key in blue circle

立即获取免费的 30 天试用版密钥

Your trial license will be sent to your email address

无任何限制。100% 解锁。无需信用卡。

OR
bullet_checked无需信用卡或创建账户无任何限制。100% 解锁。无需信用卡。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
获取您的无义务咨询
填写下面的表格或通过sales@ironsoftware.com
您的资料将始终保密。
深受全球数百万工程师信赖
Iron Software 的客户徽标
立即获取您的免费30 天试用密钥
无需信用卡或创建账户