PDF را به متن در C# تبدیل کنید

تبدیل PDF به متن در C#

به تازگی، ما برخی از پست‌های وبلاگ را منتشر کردیم مانند converting PDF to HTML و PDF to Images به‌طور برنامه‌نویسی. این مقاله به ما می‌آموزد که چگونه PDF را به متن در C# با استفاده از یک .NET OCR library تبدیل کنیم. به عنوان یک توسعه‌دهنده .NET، شما می‌توانید به راحتی از این کتابخانه برای تبدیل فایل‌ها به سایر فرمت‌های محبوب استفاده کنید. علاوه بر این، مجموعه‌ای غنی از ویژگی‌ها برای خودکار کردن فرآیند استخراج متن از PDF وجود دارد. با این حال، ما مراحل و قطعه کد را برای نشان دادن استخراج متن از یک فایل PDF اسکن‌شده می‌نویسیم.

نقاط زیر در این مقاله پوشش داده خواهد شد:

نصب کتابخانه OCR برای تبدیل PDF به TXT در .NET

این کتابخانه قدرتمند است و documentation کاملی درباره توسعه و استفاده ارائه می‌دهد. شما می‌توانید فرمت‌های مختلف فایل را به سرعت و به طور کارآمد تبدیل و پردازش کنید.

برای نصب این API در پروژه .NET خود، می‌توانید یا download فایل‌های DLL را دانلود کنید یا دستور زیر را در مدیر بسته NuGet اجرا کنید.

Install-Package Aspose.OCR

چگونه PDF را با OCR در C# به متن تبدیل کنیم

استخراج متن از یک فایل PDF اسکن شده بسیار آسان است و مسأله‌ای است که به چند خط کد منبع در C# مربوط می‌شود.

لطفاً مراحل ذکر شده در زیر را دنبال کنید:

  1. یک شی از کلاس AsposeOcr ایجاد کنید.
  2. شما باید یک نمونه از کلاس DocumentRecognitionSettings را برای شناسایی تصاویر از PDF inicialize کنید.
  3. مقدار خاصیت DetectAreas را برای فعال‌سازی تشخیص خودکار ناحیه متن تنظیم کنید.
  4. یک لیست از RecognitionResult نوع‌ها ایجاد کنید، متن را از اسناد PDF اسکن شده با فراخوانی روش RecognizePdf استخراج کنید و نتیجه را به لیست اختصاص دهید.

کد زیر را برای تبدیل PDF به TEXT در سی شارپ کپی و پیست کنید.


string fullPath =   "sample.pdf";
// یک شی از کلاس AsposeOcr ایجاد کنید 
AsposeOcr api = new AsposeOcr();
// یک نمونه از کلاس DocumentRecognitionSettings را برای شناسایی تصاویر از PDF مقداردهی اولیه کنید.  
DocumentRecognitionSettings set = new DocumentRecognitionSettings();
// مقدار ویژگی DetectAreas را برای فعال‌سازی شناسایی خودکار نواحی متنی تنظیم کنید. 
set.DetectAreas = false;
// یک لیست از نوع RecognitionResult ایجاد کنید، متن را از سند PDF اسکن شده استخراج کرده و با فراخوانی متد RecognizePdf نتیجه را به لیست اختصاص دهید.  
List<RecognitionResult> result = api.RecognizePdf(fullPath, set);
// Print result
int pageNumber = 0;
foreach (var page in result)
    {                
        System.Console.WriteLine($"Page: {pageNumber++} text: {page.RecognitionText}");
    }

متن را از PDF با OCR در C# استخراج کنید - گزینه‌های پیشرفته

در این بخش، ما این کتابخانه را بیشتر بررسی خواهیم کرد. این همچنین به شما این امکان را می‌دهد که فایل‌های PDF اسکن شده را از جریان شناسایی کنید.

مراحل زیر است:

  1. یک نمونه از کلاس AsposeOcr را ایجاد کنید.
  2. یک نمونه از کلاس MemoryStream ایجاد کنید تا PDF را از جریان شناسایی کنید.
  3. مقداردهی سازنده FileStream را انجام دهید و فایل منبع را بارگذاری کنید.
  4. متد CopyTo را برای نوشتن بایت‌ها در حافظه استریم فراخوانی کنید.
  5. یک شیء از کلاس DocumentRecognitionSettings ایجاد کنید که تصاویر را از PDF شناسایی کند.
  6. یک لیست از RecognitionResult نوع ایجاد کنید و آن را با نتایج متد RecognizePdf初始化 کنید.

کد زیر نشان می‌دهد که چگونه می‌توان متن را با OCR از PDF در C# با یک روش پیشرفته استخراج کرد:


string fullPath =   "final.pdf";
// یک نمونه از کلاس AsposeOcr را Instantiate کنید. 
AsposeOcr api = new AsposeOcr();
// یک نمونه از کلاس MemoryStream ایجاد کنید تا pdf را از جریان شناسایی کند.     
using (MemoryStream ms = new MemoryStream())
{
    // سازنده FileStream را مقداردهی اولیه کنید و فایل منبع را بارگذاری کنید.  
    using (FileStream file = new FileStream(fullPath, FileMode.Open, FileAccess.Read))
    {
        // Invoke the CopyTo method to write the bytes to the memory stream.  
        file.CopyTo(ms);
        // یک شی از کلاس DocumentRecognitionSettings ایجاد کنید که تصاویر را از PDF شناسایی کند. 
        DocumentRecognitionSettings set = new DocumentRecognitionSettings();
        // یک لیست از نوع RecognitionResult ایجاد کنید و آن را با نتایج متد RecognizePdf مقداردهی کنید.  
        List<RecognitionResult> results = api.RecognizePdf(ms, set);     

        // Print result
        foreach (var result in results)
        {
            Console.WriteLine(result.RecognitionText);
        }
    }
}

یک لایسنس رایگان بگیرید

شما می‌توانید یک مجوز موقت رایگان دریافت کنید تا بدون محدودیت‌های ارزیابی API را امتحان کنید.

خلاصه کردن

این ما را به پایان این پست وبلاگ می رساند. شما یاد گرفتید که چگونه PDF را به متن در C# به صورت برنامه‌نویسی تبدیل کنید. علاوه بر این، ما همچنین برخی از روش‌های پیشرفته‌ای که توسط این کتابخانه .NET OCR ارائه شده است را بررسی کردیم. علاوه بر این، شما می‌توانید به documentation مراجعه کنید تا با ویژگی‌های دیگر آشنا شوید. این راهنما مطمئناً به شما کمک می‌کند اگر به دنبال تجهیز برنامه‌تان با یک تبدیل‌کننده PDF به متن هستید. همچنین، conholdate.com در حال نوشتن پست‌های وبلاگ جدید در موضوعات جدید است. بنابراین، لطفاً برای دریافت به‌روز‌رسانی‌های منظم در ارتباط باشید.

پرسش بپرسید

شما می‌توانید سوالات یا پرسش‌های خود را در forum به ما اطلاع دهید.

سوالات متداول

چگونه می‌توانم یک فایل PDF را به صورت برنامه‌نویسی به متن تبدیل کنم؟

شما می‌توانید PDF را به متن در C# با استفاده از این OCR .NET library تبدیل کنید. این کتابخانه متد RecognizePdf را ارائه می‌دهد که این عمل را به طور کارآمد انجام می‌دهد.

ساده ترین راه برای تبدیل PDF به متن چیست؟ شما می‌توانید به documentation این کتابخانه مراجعه کنید تا با روش‌هایی که می‌توانید داده‌ها را به‌صورت برنامه‌نویسی از فایل‌های PDF اسکن‌شده استخراج کنید، آشنا شوید.

همچنین ببینید