کپی-پیست پیدیاف متن اشتباه میدهد؟ ابتدا لایه متنی را عیبیابی کنید
یک فایل PDF ممکن است کاملاً درست به نظر برسد اما کلمات یا اعداد اشتباهی را کپی کند. با استفاده از چهار فایل نمونه، مشکلات لایه متنی را شناسایی کنید و راهکاری قابل اعتبارسنجی برای رفع آن انتخاب نمایید.

اگر ظاهر یک فایل PDF درست است اما هنگام پیست کردن متن اشتباهی نمایش داده میشود، فوراً استفاده از متن پیستشده را متوقف کنید. ابتدا بخش کوتاهی را با متن قابل مشاهده در صفحه مقایسه کنید: یک نام، یک جمله و یک عدد. اقدام بعدی به این بستگی دارد که آیا فایل اصلاً متن قابل استخراجی ندارد، نگاشت نویسهها در آن نادرست است، یک لایه مخفی OCR با دقت پایین دارد، یا دچار مشکل در ترتیب خواندن است. اجرای سراسری OCR روی تمام سند برای هیچیک از این چهار حالت، اولین اقدام مناسب نیست.
خطرناکترین خطا، حروف ناخوانا و بههمریخته نیست، بلکه متنی است که در نگاه اول معقول به نظر میرسد: صفحهای که در آن نوشته شده ۱۸ دفترچه در حالی که متن استخراجشده نشان میدهد ۱۳ دفترچه. ما چهار فایل PDF قابل دانلود آماده کردهایم تا بتوانید این تفاوت را بدون نیاز به استفاده از اسناد محرمانه و خصوصی بررسی کنید.
کار را با یک بررسی کوتاه کپی و مقایسه آغاز کنید
فایل اصلی را دستنخورده نگه دارید و یک نسخه کپی از آن را باز کنید. بخش کوتاهی از متن را انتخاب کرده و در یک ویرایشگر متن ساده پیست کنید، سپس آن را نویسه به نویسه با متن روی صفحه تطبیق دهید. این کار را روی صفحهای دیگر و در صورت امکان در یک نرمافزار پیدیافخوان دیگر تکرار کنید. این یک بررسی تشخیصی است و دلیلی بر صحت بقیه سند نخواهد بود.
| آنچه رخ میدهد | موردی که باید بررسی شود | اولین اقدام مفید |
|---|---|---|
| هیچ متنی انتخاب نمیشود یا متن پیستشده خالی است | صفحه ممکن است تنها حاوی یک تصویر باشد | بررسی کنید که آیا نرمافزار بهجای متن، تصویر صفحه را انتخاب میکند یا خیر |
| حروف به شکلی یکدست تغییر میکنند، هرچند در صفحه عادی به نظر میرسند | کدگذاری نویسهها یا نگاشت استخراج حروف | خروجی نرمافزار پیدیافخوان دیگری را مقایسه کنید؛ بهدنبال فایل منبع اصلی یا خروجی باکیفیتتری باشید |
| بیشتر کلمات خوانا هستند، اما نامها یا اعداد اشتباهاند | لایه متنی نادرست، از جمله لایههای قدیمی OCR | متن استخراجشده را با تصویر اسکنشده صفحه مقایسه کنید |
| حروف درست هستند، اما ستونها، زیرنویسها یا پانویسها با ترتیب نادرستی نمایش داده میشوند | استخراج چیدمان و ترتیب خواندن متن | یک ستون یا بند را بهصورت جداگانه بررسی کنید |
| کپی کردن غیرفعال است | مجوزهای سند یا رفتار نرمافزار پیدیافخوان | مجوزهای فایل را بررسی کنید و از منبع ارسالکننده، نسخهای قابل استفاده بخواهید |
این موارد فقط سرنخ هستند، نه راهکاری قطعی برای تشخیص ساختار درونی هر پیدیاف بر اساس یک نشانه. راهنمای Adobe درباره استفاده مجدد از محتوا ، تفاوت میان محتوای کاملاً تصویری را با محدودیتهای کپی مشخص میکند. هیچکدام از این موارد را نباید فوراً بهعنوان لایه متنی آسیبدیده تلقی کرد. همچنین راهنمای استخراج pypdf بهطور جداگانه تصاویر، استخراج متن، و چالشهای کار با جدولها و فاصلهگذاریها را تشریح میکند.
برای یک کتاب یا گزارش طولانی، شماره صفحه پیدیافی را که هر مشکل در آن رخ میدهد یادداشت کنید. بینقص بودن صفحه عنوان نشان نمیدهد که آیا یک ضمیمه، بخش اسکنشده، یا فصلی دو ستونه نیز بهدرستی کپی خواهد شد یا خیر.
چهار فایل پیدیاف: مقایسه آنچه در صفحه دیده میشود با آنچه در استخراج متن به دست میآید
صفحه آزمایشی ما شامل چهار خط اصلی است، از جمله:
The archive contains 18 notebooks.
Item B-204 arrived on 6 May.
ما یک پیدیاف دیجیتال معمولی ایجاد کردیم و سپس عمداً سه نمونه متفاوت دیگر ساختیم. در ادامه، متن آنها را با ابزارهای Poppler و pypdf استخراج کردیم. هر دو استخراجکننده برای هر فایل در این آزمون، خروجی یکسانی ارائه دادند.
| دانلود فایل PDF | نحوه ساخت فایل | نتیجه واقعی استخراجشده |
|---|---|---|
| متن دیجیتال صحیح | متن نمایشی عادی با فونت جاسازیشده (Embedded) | 18 notebooks; B-204; 6 May |
| نگاشت یونیکد (Unicode Mapping) نادرست | نگاشت استخراج تغییر داده شد، بدون آنکه گلیفهای بصری تغییر کنند | 13 notebooks؛ چند حرف کوچک a تبدیل شدند به x |
| متن پنهان نادرست | قرار دادن متنی نامرئی و عمداً نادرست روی تصویر صفحه | 13 notebooks; B-2O4; 8 May |
| صفحهٔ فقطتصویر | استفاده از همان تصویر صفحه بدون هیچ لایهٔ متنی | خروجی متن خالی |
یک صفحهٔ دیجیتال با ظاهر عادی ممکن است به اشتباه کپی شود
دو PDF اول در مقایسهٔ ما از نظر پیکسلی کاملاً یکسان رندر شدند، اما متن استخراجشده از آنها متفاوت بود. در فایل دوم، ما عمداً یک نگاشت ToUnicode را تغییر دادیم: اطلاعاتی که برای نگاشت کدهای کاراکتری ذخیرهشده به متن یونیکد به کار میروند. عدد قابلمشاهده همان 8باقی ماند، در حالی که خروجی استخراجشده 3بود. مستندات CMap در pypdf این سازوکار نگاشت را به تصویر میکشد.
این امر یکی از سازوکارهای بروز خطا را نشان میدهد، نه اینکه ادعا کنیم هر PDF بههمریختهای دقیقاً همین نقص را دارد. وجود نداشتن ورودی ToUnicode به خودی خود تشخیص قطعی ما نیست، و ویرایش دستی نگاشتها نیز راهحلی عمومی و مناسب برای کاربران عادی محسوب نمیشود.
یک اسکن قابل جستجو میتواند شامل کلمات اشتباه باشد
فایلهای PDF سوم و چهارم نیز از نظر ظاهری کاملاً شبیه به هم رندر شدند. یکی شامل متن نامرئی نادرست بود و دیگری هیچ متنی نداشت. در فایل سوم، فرایند استخراج بدون هیچ هشداری هم یک مقدار و هم یک تاریخ را تغییر داد. کد B-2O4 حاوی حرف انگلیسی Oبود، نه رقم 0 که در تصویر دیده میشد.
ما خودمان این خطاها را وارد کردیم تا نمونهای از ناهماهنگیهایی باشد که یک لایهٔ متنی پنهان میتواند در بر داشته باشد. یک موتور OCR آنها را تولید نکرده است . فایل چهارم حالت معکوس را نشان میدهد: تصویر صفحهای کاملاً خوانا که هیچ دادهای برای استخراج متن توسط این ابزارها ندارد. این موضوع کاملاً با محدودیت مستندشدهٔ pypdf همخوانی دارد: این ابزار متن موجود در PDF را استخراج میکند، اما کلمات درون تصاویر را تشخیص نمیدهد.
آنچه این آزمایش اثبات میکند — و آنچه اثبات نمیکند
در ۱۰ سپتامبر ۲۰۲۶، ما چهار فایل تکصفحهای را با استفاده از Poppler 26.08.0 و pypdf 6.10.0 بررسی کردیم. مقایسههای بصری با استفاده از Poppler در ۱۴۴ dpi انجام شد. برابری پیکسلی برقرار بود درون دو جفت فایل، نه در میان هر چهار فایل: جفت فایل مبتنی بر تصویر یک مرحله رندر اضافی را پشت سر گذاشتند.
این یک نمایش کنترلشده است، نه یک بنچمارک دقت OCR. این آزمون شامل شناسایی چندزبانه، چیدمانهای پیچیده، تعمیر با Acrobat، تعمیر با OCRmyPDF یا آپلود در BookTranslator نمیشود. اینها نمونههای ساختگی با ایرادات مشخص بودند، نه یک ارزیابی کور.
بخش نتایج متن خام و پیکسلی, دستورالعملهای بازتولید، و تولیدکننده همراه با فایلها در دسترس هستند. آنها از فونت دستنخورده Noto Sans همراه با مجوز فونت باز ارائهشده استفاده میکنند.
کمدردسرترین گام بعدی را انتخاب کنید
مسیرهای تعمیر زیر برگرفته از مستندات رسمی و تشخیصهای کاربردی هستند. آنها نتایج تعمیر حاصل از آزمایش چهارفایلی ما نیستند. روی یک نسخه کپی کار کنید و قبل از جایگزین کردن هر فایلی که به آن متکی هستید، خروجی را بررسی کنید.
اگر سند منبع را در اختیار دارید، ابتدا یک خروجی جدید بگیرید
یک PDF تازه از فایل اصلی واژهپرداز، نشر یا حروفچینی اولین گزینه کاربردی است. دقیقاً همان بخشی را که دچار مشکل شده بود مقایسه کنید. تصور نکنید که نام فایل جدید یا خروجی موفقیتآمیز به این معناست که متنش اکنون درست است.
برای مطالبی که از یک آرشیو یا ناشر دریافت شدهاند، بررسی کنید که آیا نسخه متنی جایگزینی وجود دارد یا خیر. ارجاعات مربوط به ویرایش و شماره صفحه را هماهنگ نگه دارید: یک فایل تمیزتر از ویرایشی دیگر ممکن است شامل همان بخشی که نیاز دارید نباشد.
اگر یک اسکن خطاهای تشخیص محدودی دارد، همان کلمات را بازبینی کنید
نرمافزار Acrobat فرآیندی را در مسیر زیر مستند کرده است: Scan & OCR → Correct recognized text. این قابلیت به شما امکان میدهد کلمات مشکوک نشانهگذاریشده را با تصویر اسکنشده مطابقت دهید و متن شناساییشده را اصلاح کنید. برای رابط کاربری نسخه خود، دستورالعملهای اصلاح کنونی Adobe را دنبال کنید.
خالی بودن فهرست کلمات مشکوک را به معنای بینقص بودن در نظر نگیرید. نامها، تاریخها، شناسهها و مقادیری را که قرار است نقلقول یا ترجمه کنید، بهطور مستقل مقایسه نمایید. کلمه عمداً اشتباه 13 notebooks نشان میدهد که چرا خروجی خوانا به تنهایی کافی نیست.
اگر متن پنهان به طور کلی نادرست است، تفاوت بین redo و force را بشناسید
برای خوانندگانی که از ابزارهای خط فرمان استفاده میکنند، OCRmyPDF مسیرهای متفاوتی را برای صفحاتی که از قبل حاوی متن هستند مستند کرده است:
--redo-ocrمتن غیرقابلچاپ OCR موجود را حذف کرده و مجدداً عملیات تشخیص را انجام میدهد، در حالی که متنهای قابلچاپ را از OCR مستثنی میکند.--skip-textصفحاتی را که حاوی متن هستند رد میکند. این روش راهکاری برای اصلاح یک لایه متنی اشتباهِ موجود نیست.--force-ocrمحتوای صفحه را شطرنجی (رستریزه) کرده و OCR را روی تصاویر حاصل اجرا میکند.
این رفتارها در مستندات خطای متن موجود در OCRmyPDFشرح داده شدهاند. در نسخه ۱۷، گزینههای معادل از طریق --modeنیز در دسترس هستند؛ پرچمهای قدیمیتر همچنان به عنوان نامهای مستعار باقی ماندهاند.
این روشها هزینهها و استثنائاتی دارند. Redo نمیتواند تمام چینشهای قدیمی OCR را شناسایی کند؛ برخی فایلها تصویری کدر را روی متنی قرار میدهند که از نظر فنی قابلچاپ است. Force متن قابلچاپ و محتوای برداری را به پیکسل تبدیل کرده و محتوای تعاملی را یکپارچه (تخت) میکند. همچنین Redo و force درخت ساختار موجود را به جای بازسازی، حذف میکنند. پیش از انتخاب هر کدام، مستندات پیشرفته OCRmyPDF را بررسی کنید.
بنابراین، یک متن استخراجشدهی اصلاحشده به منزلهی تأیید دسترسپذیری نیست. اگر سند به تیترها، ترتیب خواندن صحیح یا تصاویر دسترسپذیر نیاز دارد، از فرایند مجزای بررسیهای دسترسپذیری PDF ترجمهشده.
اگر صفحات یا زبانها متفاوت هستند، فرض نکنید یک تنظیمات برای همه مناسب است
مشخص کنید کدام صفحات از قبل حاوی متن دیجیتال قابلاعتماد هستند و کدامیک نیاز به تشخیص دارند. پیش از پیکربندی OCR، زبانهای صفحات موردنظر را بررسی کنید. راهنمای OCR پیدیافهای چندزبانه به انتخاب زبان میپردازد؛ این تصمیم متفاوتی از تعیین اشتباه بودن یک لایه متنی قدیمی است.
اگر اصلاً لایه متنی وجود ندارد، به سراغ گردش کار PDF اسکنشدهبروید. تلاشهای مکرر با ابزارهای دیگر استخراج متن ساده باعث نخواهد شد pypdf کلمات درون یک تصویر را تشخیص دهد.
متن جایگزین را قبل از استفاده اعتبارسنجی کنید
از همان برگه بررسی لایه متنی قابل دانلود استفاده کنید تا مرجع بصری، استخراج قبلی و استخراج جایگزین را کنار یکدیگر نگه دارید. ابتدا با همان بخش دارای خطا شروع کنید، سپس یک بخش دیگر و هر صفحهای با چیدمان کاملاً متفاوت را بیازمایید.
- کلمات: نامها و اصطلاحات ناآشنا را حرفبهحرف مقایسه کنید.
- اعداد: مقادیر، ممیزها، تاریخها و شناسههایی مانند
B-204. - ترتیب: یک پاراگراف کامل را در میان شکستگی خطوط بخوانید؛ ستونها و شرح تصاویر مجاور را جداگانه بررسی کنید.
- پوشش متن: مطمئن شوید که صفحات و بخشهای مورد نیاز شما از قلم نیفتاده باشند.
- رفتار فایل: فایل جایگزین ذخیرهشده را دوباره باز کنید و آزمون کپی را تکرار نمایید. اگر به بوکمارکها، پیوندها یا ساختارهای دسترسپذیری وابستهاید، آنها را نیز بررسی کنید.
موفقیتآمیز بودن بخشهای منتخب تنها وضعیت همان بخشها را اثبات میکند، نه کل فایل را. همیشه تصویر صفحه اصلی را به عنوان مرجع حفظ کنید، بهویژه هنگام تصحیح یک نقلقول یا متنی به زبان ناآشنا.
فقط پس از اطمینان از صحت متن مبدأ ترجمه را آغاز کنید
اگر هدف شما نقلقول یک پاراگراف یا یادداشتبرداری بوده، متن استخراجشده و تأییدشده میتواند پایان کار باشد؛ برای انجام چنین کاری نیازی به سرویس ترجمه ندارید.
اما اگر نیاز دارید کل سند را به زبان دیگری بخوانید، از فایل تأییدشده به عنوان نقطه شروع برای ترجمه PDFاستفاده کنید. حالت OCR در BookTranslator فایل PDF ترجمهشده را بر اساس محتوای شناساییشده بازسازی میکند؛ این قابلیت به منزله تضمینی برای ترمیم لایه متنی موجود یا بازتولید دقیق چیدمان صفحه اصلی نیست.
صفحات مرجع را در طول مرحله ترجمه نیز نزد خود نگه دارید. همان مقادیر و شناسههایی که در اینجا بررسی شدند، باید در مرحله نهایی بررسی کیفیت ترجمه PDFنیز چک شوند. یک ترجمه روان بهخودیخود نمیتواند به شما بگوید که متن مبدأ آن باید به جای 18 عدد 13.
مطالب مرتبط





