در یک PDF نظر بدهید و متن موجود در آن را جستجو کنید—بدون افزونهها.
مقدمه
بسیاری از سازمانها از PDFها به عنوان فرمت اصلی سند برای گزارشها، مقالات پژوهشی، راهنماها و نقشههای فنی استفاده میکنند. در بسیاری از برنامههای .NET، کاربران میتوانند فایلی را بارگذاری کرده و در یک نمایشگر باز کنند—اما جریان کار در آنجا متوقف میشود.
یک نمایشگر سنتی فقط یک تجربه فقط-خواندنی ارائه میدهد و کاربران را قادر به علامتگذاری سند یا یافتن یک عبارت بدون اسکرول کردن نمیگذارد.
با افزودن حاشیهنویسی و جستجوی متن به یک نمایشگر PDF بدون افزونه مدرن، برنامههای .NET به افراد اجازه میدهند بر روی یک فایل نظر بدهند و مستقیماً به بخش مورد نیاز پرش کنند — به شرطی که PDF لایه متنی داشته باشد، که در اکثر موارد وجود دارد.
در این مقاله ما بررسی خواهیم کرد:
- چگونه حاشیهنویسی PDF جریان کار بازبینی اسناد را بهبود میبخشد
- چگونه جستجوی تمام متن لایه متنی PDF را میخواند و چه فایلهایی را نمیتواند کمک کند
- چقدر به راحتی میتوان این ویژگیها را در یک برنامه .NET ادغام کرد
میتوانید نمایشگر را امتحان کنید یا SDK را از اینجا دانلود کنید:
1. حاشیهنویسی PDF – تبدیل صفحات ثابت به اسناد تعاملی
مشکل PDFهای ثابت
بسیاری از تیمها هنوز هنگام بازبینی اسناد به جریانهای کاری ناکارآمد وابسته هستند:
- PDF را چاپ کنید
- با قلم آن را علامتگذاری کنید
- سند را اسکن کنید
- نسخه جدید را بارگذاری کنید
این فرآیند ابهام نسخه، تأخیرها و کار دستی غیرضروری ایجاد میکند.
راه حل: لایه حاشیهنویسی در نمایشگر
یک موتور حاشیهنویسی را در پورتال .NET خود تعبیه کنید تا کاربران بتوانند بهصورت مستقیم با سند تعامل داشته باشند.
یک نکته مجوزی قبل از جدول ویژگیها وجود دارد، زیرا بر بودجه تأثیر میگذارد نه بر طراحی: حاشیهنویسی یک پلاگین جداگانه برای Doconut Viewer است و بخشی از نمایشگر پایه نیست. این یکی از چهار مورد است — Annotation، Converter، DICOM و Search. جستجوی لایه متنی که در بخش بعدی بحث شد، نیز پلاگین Search است. چاپ کنترلشده، برعکس، بخشی از خود نمایشگر است.
| ویژگی | مزیت |
|---|---|
| هایلایت، زیرخط، خطخورده | بهسرعت متن مهم را برجسته کنید |
| یادداشتهای چسبان | بازخورد متنی را مستقیماً داخل سند اضافه کنید |
| رسم آزاد | مفید برای نمودارها، طرحهای فنی و بازبینیهای طراحی |
| حاشیهنویسیهای زماندار | زمان افزودن تغییرات را پیگیری کنید |
بهجای تغییر فایل اصلی، حاشیهنویسیها میتوانند بهعنوان لایههای متادیتای جداگانه (مثلاً JSON) که به سند مرتبط هستند، ذخیره شوند.
این رویکرد تضمین میکند:
- PDF اصلی بدون تغییر میماند
- حاشیهنویسیها میتوانند بهصورت مستقل صادر یا حذف شوند
- سند بهعنوان منبع واحد حقیقت باقی میماند
تأثیر عملی
حاشیهنویسی بهطور چشمگیری جریان کار اسناد را بهبود میبخشد:
- بازبینی اسناد سریعتر
- بازخورد واضحتر در طول بحثهای طراحی یا پژوهش
- کاهش نیاز به ابزارهای ویرایش خارجی
2. جستجوی تمام متن – آنچه یک PDF باید داشته باشد
دو PDF که بهنظر یکسان میآیند
دو قرارداد اسکنشده را کنار هم باز کنید و ممکن است یکدیکه بهنظر برسند. یکی قابل جستجو است و دیگری نیست، و هیچ چیزی روی صفحه نشان نمیدهد کدام کدام است.
یک PDF تصاویر صفحات را ذخیره میکند و بهصورت جداگانه یک لایه متن دارد: کاراکترهای صفحه و موقعیت هر یک. تقریباً هر PDF که از Word، یک ژنراتور گزارش، خروجی یک سیستم تجاری یا اسکنری با تشخیص متن فعال تولید شده باشد، آن لایه را دارد. جستجو عبارت شما را با آن مقایسه میکند و مکان آن کاراکترها را بر روی تصویر صفحه برجسته میسازد.
PDFی که فقط یک عکس از صفحه باشد، چنین لایهای ندارد. در فایل متنی وجود ندارد، بنابراین چیزی برای جستجو وجود ندارد.
آنچه نمایشگر با لایه متن انجام میدهد
| قابلیت | توضیح |
|---|---|
| جستجوی لایه متن | پرسوجو را با کاراکترهای ذخیرهشده در فایل مقایسه میکند |
| هایلایت نتایج | هر تطبیق را در محل خود بر روی صفحه رندر شده علامتگذاری میکند |
| ناوبری نتایج | از یک نتیجه به نتیجه بعدی در سراسر سند میپرد |
| هر اسکریپتی | لایه را همانطور که نوشته شده میخواند، لاتین یا غیر لاتین |
در جایی که لایه موجود باشد:
- متن قابل انتخاب است
- کاربران میتوانند محتوا را کپی کنند
- جستجوی تمام متن در سراسر فایل کار میکند
در صورتی که لایه وجود نداشته باشد، فایل همچنان باز میشود و بهصورت عادی رندر میشود؛ اما نمیتوان آن را جستجو کرد. Doconut در حال حاضر کاراکترها را از تصویر صفحه نمیخواند.
چرا این مهم است
قابلیت جستجو بودن یک سند زمانی تصمیمگیری میشود که وارد سیستم شما شود، نه زمانی که کسی نیاز به یافتن آن داشته باشد. اسکنرها و پلتفرمهای مدیریت سند تقریباً همه میتوانند هنگام ورود لایه متنی بنویسند، و فایلی که با این لایه میآید تا زمانی که نگهداری شود مفید میماند.
در یک آرشیوی که به این شکل ثبت شده باشد، کاربران میتوانند بلافاصله پیدا کنند:
- مشخصات فنی
- موارد قانونی
- مراجع علمی
- سوابق تاریخی
بهجای بررسی دستی اسناد، میتوانند بهسادگی جستجو کنند و به بخش مربوطه پرش کنند.
3. ادغام ساده در برنامههای .NET
نام بسته، نسخه و مراحل اولیهسازی را از صفحه دانلود رسمی و مستنداتی که همراه با نسخهای که نصب میکنید ارائه میشود، بگیرید. هر دو در طول نسخهها تغییر کردهاند و یک خط بسته که از یک مقاله کپی شده است، رایجترین دلیل برای شکست اولین ادغام بهگونهای است که شبیه خطای مجوز بهنظر میرسد.
نمایشگر با فریمورکهای رایج .NET شامل:
- ASP.NET Core
- ASP.NET MVC
- Blazor
پس از پیکربندی، برنامه شما PDFها را مستقیماً در مرورگر نمایش میدهد. حاشیهنویسی و جستجوی متن پس از فعالسازی و دریافت مجوز پلاگینهای مربوطه ظاهر میشوند.
4. بدون افزونه و ایمن بهصورت طراحیشده
مرورگرهای مدرن دیگر از افزونههای قدیمی مانند Flash یا ActiveX پشتیبانی نمیکنند.
یک نمایشگر PDF مدرن باید کاملاً در HTML5 و JavaScript اجرا شود.
مزایای کلیدی شامل:
- نصب سمت کلاینت لازم نیست
- در مرورگرهای مدرن کار میکند
- سازگار با دستگاههای دسکتاپ و موبایل
ویژگیهای امنیتی معمولاً شامل:
- ارتباط فقط از طریق HTTPS
- احراز هویت مبتنی بر توکن
- دسترسی کنترلشده به سند
این باعث میشود نمایشگر برای برنامههای سازمانی که با اسناد حساس سروکار دارند مناسب باشد.
نتیجهگیری
PDFهای ثابت محدودیتهایی برای نحوه کار تیمها با اطلاعات ایجاد میکنند. افزودن حاشیهنویسی و جستجوی متن به برنامه .NET شما فایلی را که فقط میتوانست خوانده شود، به فایلی تبدیل میکند که میتوانند روی آن نظر بدهند و جستجو کنند.
مزایای کلیدی شامل:
- بازبینی سریعتر اسناد با ابزارهای حاشیهنویسی
- جستجوی تمام متن در هر جایی که PDF لایه متنی داشته باشد، که بیشتر آنها این ویژگی را دارند
- ادغام آسان در برنامههای .NET موجود
- تجربه نمایش بدون افزونه
اگر میخواهید این قابلیتها را بیشتر بررسی کنید، میتوانید بیشتر بیاموزید یا محصول را از اینجا دانلود کنید:
به خوانندگان خود PDFی بدهید که بتوانند آن را علامتگذاری و جستجو کنند، داخل برنامهای که از قبل استفاده میکنند.
