یک گزارش اسکنشده ممکن است حاوی اطلاعاتی باشد که میخواهید آن را ویرایش کنید یا به مستندات خود اضافه کنید. با OCR میتوانید متن موجود در تصویر را شناسایی کنید و بهجای تایپ مجدد، آن را به صورت Markdown ذخیره کنید.
در این مقاله، خواهید آموخت که چگونه یک تصویر PNG یا JPG را به Markdown در C# با استفاده از Aspose.OCR for .NET تبدیل کنید. همچنین خواهید دید که خروجی میتواند شامل جداول شناساییشده و تصاویر تشخیصدادهشده باشد.
کتابخانه C# OCR برای تبدیل تصویر به مارکداون
Aspose.OCR for .NET به شما امکان میدهد متن را در تصاویر شناسایی کنید و نتایج را در چندین قالب، از جمله Markdown، ذخیره کنید. برای این آموزش، از نسخه 26.10.0 یا بالاتر استفاده کنید. نسخه 26.10 تنظیم DOCUMENT_LAYOUT را که در مثال استفاده شده است معرفی کرد و خروجی Markdown را با اطلاعات چیدمان بهبود داد.
پکیج را در پروژه کنسول .NET خود با استفاده از دستور زیر نصب کنید:
dotnet add package Aspose.OCR --version 26.10.0
شما همچنین به یک تصویر PNG یا JPG قابل خواندن و اجازه نوشتن در فایلهای خروجی نیاز دارید. برای دنبال کردن مثال، یک تصویر به نام report.png را در پوشه پروژه خود قرار دهید.
نسخه آزمایشی مقدار متن شناساییشده را محدود میکند. برای حذف این محدودیت در طول ارزیابی، میتوانید یک مجوز موقت درخواست کنید و قبل از شناسایی آن را اعمال کنید. برای جزئیات، به مستندات مجوزدهی مراجعه کنید.
تبدیل یک تصویر به Markdown در C#
مراحل زیر نشان میدهند که چگونه یک تصویر را شناسایی کرده و نتیجه را به صورت Markdown ذخیره کنید:
- یک نمونه از کلاس
AsposeOcrایجاد کنید. - یک شیء
OcrInputبرای یک تصویر واحد ایجاد کنید و فایل تصویر را اضافه کنید. - مقدار
DetectAreasModeرا در شیءRecognitionSettingsبهDOCUMENT_LAYOUTتنظیم کنید. - متد
Recognizeرا فراخوانی کنید تا تصویر پردازش شود. - نتایج را با استفاده از
OcrOutput.SaveوSaveFormat.Mdذخیره کنید.
برای این مثال، از تصویری از یک گزارش که شامل یک عنوان، متن، جدول و یک تصویر است استفاده کنید. محتوای Program.cs را با کد زیر جایگزین کنید:
using Aspose.OCR;
// Create the OCR engine.
AsposeOcr recognitionEngine = new AsposeOcr();
// Add the image to the input.
OcrInput input = new OcrInput(InputType.SingleImage);
input.Add("report.png");
// Enable document layout detection.
RecognitionSettings settings = new RecognitionSettings
{
DetectAreasMode = DetectAreasMode.DOCUMENT_LAYOUT
};
// Recognize the image.
OcrOutput results = recognitionEngine.Recognize(input, settings);
// Save the recognition result as Markdown.
results.Save("report.md", SaveFormat.Md);
برنامه را از دایرکتوری پروژه اجرا کنید:
dotnet run
برنامه report.png را میخواند و نتیجه تشخیص را به عنوان report.md ذخیره میکند. هر دو مسیر نسبت به دایرکتوری کاری فعلی برنامه نسبی هستند. برای یک تصویر JPG، مسیر ورودی را به فایل JPG خود تغییر دهید؛ مراحل تشخیص و صادرات همانند قبلی باقی میمانند.
DOCUMENT_LAYOUT عناصری از سند را شناسایی میکند که میتوانند برای سازماندهی خروجی Markdown استفاده شوند. نتیجه به تصویر و محتوای شناساییشده بستگی دارد، بنابراین خروجی را در مقابل نسخه اصلی بررسی کنید. این مثال بر اساس یادداشتهای انتشار Aspose.OCR 26.10 است.
بررسی مارکداون تولید شده
فایل report.md را در یک ویرایشگر متن یا نمایشگر Markdown باز کنید. میتوانید متن شناساییشده را ویرایش کنید و ساختار آن را در صورت نیاز تنظیم کنید. وقتی موتور OCR جدول را شناسایی میکند، خروجی میتواند آن را به صورت جدول Markdown نمایش دهد.
بخش زیر نحوهٔ استفاده از جدول و تصویر در Markdown را نشان میدهد. این خروجی واقعی OCR نیست؛ محتوا و مسیرهای موجود در نتیجهٔ شما به تصویر منبع و تشخیص آن بستگی دارد:
## Quarterly Report
| Product | Sales |
| --- | --- |
| Product A | 120 |

هنگامی که یک تصویر شناسایی شده و در خروجی فایل گنجانده میشود، Aspose.OCR میتواند آن را در یک پوشه تصاویر مخصوص سند در کنار Markdown تولید شده ذخیره کند و یک ارجاع به آن اضافه کند. فایل Markdown و تصاویر ارجاعشده به آن را همراه هم نگه دارید و مسیرها را در فایل حفظ کنید تا تصاویر در نمایشگر Markdown شما نمایش داده شوند.
مارکداون محتوا و ساختار را توصیف میکند؛ لزوماً ظاهر دقیق گزارش اصلی را بازتولید نمیکند.
نکات برای بهبود نتایج OCR
- از تصویر منبع واضح استفاده کنید. متن و مرزهای جدول باید در تصویر اصلی قابل خواندن باشند.
- زبان تشخیص مناسب را انتخاب کنید. در صورت نیاز
RecognitionSettings.Languageرا تنظیم کنید. برخی زبانها به یک مدل تشخیص اضافی نیاز دارند؛ برای جزئیات به language documentation مراجعه کنید. - جزئیات مهم را بررسی کنید. نامها، اعداد، سلولهای جدول و ترتیب خواندن را با تصویر منبع مقایسه کنید.
- ارجاعات تصویر را تأیید کنید. Markdown را در یک نمایشگر باز کنید و بررسی کنید که تصاویر استخراجشده نمایش داده شوند.
- اسناد نماینده را آزمایش کنید. جداول و طرحهای پیچیده ممکن است به اصلاحات دستی نیاز داشته باشند، بنابراین قبل از استفاده از خروجی در یک جریان کار خودکار، مثالها را مرور کنید.
سوالات متداول
آیا میتوانم هر دو تصویر PNG و JPG را به Markdown در C# تبدیل کنم؟
بله. فایل PNG یا JPG را به OcrInput اضافه کنید، آن را شناسایی کنید و نتایج را با SaveFormat.Md ذخیره کنید.
آیا خروجی Markdown میتواند شامل جدولها باشد؟
بله. جداول شناساییشده میتوانند به صورت جداول Markdown صادر شوند. نتیجه بستگی به تصویر منبع و نحوه شناسایی جدول دارد.
تصاویر شناسایی شده در کجا ذخیره میشوند؟
برای خروجی فایل، تصاویر شناساییشده میتوانند در یک پوشهٔ مخصوص تصاویر سند، در کنار Markdown تولید شده، ذخیره شوند. محتوای Markdown به آن فایلها ارجاع میدهد.
آیا فایل Markdown دقیقاً چیدمان صفحه اصلی را حفظ میکند؟
خیر. Markdown محتوا و ساختار را متفاوت از یک تصویر صفحه نمایش میدهد. فایل تولید شده را بررسی کنید و در صورت نیاز ساختار را تنظیم کنید.
نتیجهگیری
از این جریان کار به عنوان نقطه شروع برای تبدیل گزارشهای خود یا صفحات اسکنشده به Markdown استفاده کنید. قبل از افزودن نتایج به مستندات خود، متن، جداول و مراجع تصویر را با نسخه اصلی مقایسه کنید.
برای اطلاعات بیشتر، مستندات تشخیص. اگر به کمک نیاز دارید، انجمن پشتیبانی Aspose.OCR را بازدید کنید.
