ما تفعله أداة OCR PDF فعلاً
ملف PDF ممسوح يبدو كنص لكنه ليس كذلك. إنه كومة من صور النص — bitmaps التقطتها كاميرتك أو ماسحك الضوئي، محشورة داخل غلاف PDF. عند الضغط على Cmd-F للبحث، لا يحدث شيء. عند تحديد فقرة، المؤشر يمسح فوق البكسلات ولا يلتقط شيئاً. ذلك لأنه لا يوجد نص في الملف، فقط مظهر النص. أداة OCR PDF تُصلح ذلك. تعرض كل صفحة في canvas بـ pdfjs-dist، ثم تُشغّل Tesseract.js — منفذ WebAssembly لمحرك Tesseract مفتوح المصدر — لقراءة الأحرف من البكسلات. تحصل على ملف .txt حقيقي بالكلمات المُتعرّف عليها. كل شيء يحدث داخل متصفحك. مسحك لا يغادر الجهاز أبداً.
هذا الجزء الأخير هو الفكرة بأكملها. OCR كان متاحاً عبر الإنترنت لعقدين؛ اختر أياً من OnlineOCR.net أو SmallPDF أو iLovePDF أو نسخة الويب من Adobe Acrobat — كلها ستفعلها. كل واحد منها يرفع وثيقتك أولاً. هذا جيد لمنشور. ليس جيداً لاتفاقية قرض موقّعة، سجل طبي، مسح جواز سفر، نموذج هجرة، إقرار ضريبي، أو أي من الأشياء الأخرى التي يُجري الناس OCR عليها فعلاً. Tesseract يُشغّل نفس التعرف محلياً؛ نحن فقط صنعنا الغلاف الذي يسمح للمتصفح بتشغيله.
كيفية استخدام أداة OCR PDF
الأداة شاشة واحدة. أسقط مسحاً، اختر لغة، اضغط تشغيل.
- اسحب أو اختر PDF ممسوحاً. حتى 50 MB و 100 صفحة.
- اختر لغة الوثيقة. الإنجليزية، الإسبانية، الألمانية، الفرنسية، البرتغالية، الإيطالية، والروسية مدعومة اليوم. نموذج اللغة (~5-10 MB) يُحمّل مرة واحدة لكل لغة ويُخزّنه المتصفح.
- اختر DPI العرض. 200 DPI موصى به. 300 DPI يعطي أفضل دقة لكن يأخذ وقتاً أطول؛ 150 DPI أسرع لكن يعمل جيداً فقط على المسح النظيف.
- اضغط شغّل OCR. النموذج يُحمّل (5-15 ثانية أول مرة)، ثم كل صفحة تُعرض ويُتعرّف عليها بالترتيب. التقدم يظهر لكل صفحة؛ يمكنك الإلغاء في المنتصف.
- انسخ النص المُتعرّف عليه أو حمّله كـ .txt مُسمى باسم مصدرك (مثلاً،
contract-scan.pdf→contract-scan.txt). المخرج بترميز UTF-8.
حركة الشبكة الوحيدة أثناء التشغيل هي تحميل نموذج اللغة الأول من CDN الخاص بـ Tesseract. ذلك الطلب جلب ملف ثابت عام — نفس الذي يحصل عليه الجميع — ولا يحتوي بيانات PDF في أي اتجاه. بعد أن يهبط النموذج في تخزين المتصفح، تبويب الشبكة صامت لبقية التشغيل، وصامت إلى الأبد للتشغيلات اللاحقة في نفس اللغة.
DPI واللغة — المقبضان اللذان يهمان
Tesseract هو مطابق أنماط مُدرّب على أشكال الأحرف. شيئان يدمران مطابقة الأنماط: عدم وجود بكسلات كافية، والأبجدية الخاطئة. DPI يتحكم في الأول. اللغة تتحكم في الثاني.
| DPI العرض | الصفحات في الدقيقة | الدقة على المسح النظيف | الأفضل لـ |
|---|---|---|---|
| 150 DPI | ~30-50 | 92-96% | المسح الحاد بالفعل، نص جسم بعمود واحد، مسودات سريعة |
| 200 DPI (الافتراضي) | ~20-30 | 96-99% | معظم الوثائق — النقطة الحلوة للسرعة والدقة |
| 300 DPI | ~10-15 | 97-99%+ | الخطوط الصغيرة، الطباعة الدقيقة، الحواشي، أي شيء ستثق به دون تدقيق |
الذهاب أقل من 150 DPI مقايضة سيئة. Tesseract يبدأ في الالتباس بين الحروف المتشابهة بمجرد أن يهبط ارتفاع الحرف تحت ~30 بكسل تقريباً — "rn" يُقرأ كـ "m،" "cl" يُقرأ كـ "d،" L صغير يبدو كرقم 1. الذهاب أعلى من 300 DPI نادراً ما يساعد ويُضاعف وقت التشغيل تقريباً — عند ذلك تعرض الصفحة بتفصيل أكثر مما يمكن للمتعرّف استخدامه.
اللغة تهم أكثر مما يتوقع الناس. Tesseract المُحمّل بالنموذج الإنجليزي سيحاول التعرف على صفحة إسبانية، لكنه لا يعرف أن ñ أو í أو á حروف — سيخمّن فيها ويفوّت. اختر اللغة المهيمنة للوثيقة. لعقد إسباني مع بعض أسماء العلامات التجارية الإنجليزية المرشوشة، اختر الإسبانية؛ Tesseract سيحصل على أسماء العلامات بشكل تقريبي صحيح ونص الجسم بشكل دقيق. للوثائق متعددة النصوص (الإنجليزية بجانب الصينية، العربية، الهندية)، Tesseract ليس رائعاً في التبديل بين النصوص أثناء التشغيل — أخبرنا إذا احتجت واحدة من تلك وسنُضيف النموذج للمنتقي.
مثال عملي بأرقام حقيقية
خذ حالة حقيقية: PDF بـ 12 صفحة لكشف درجات جامعي من الثمانينات — خط آلة طباعة، مسح عند 200 DPI، لا تلف واضح، عمود واحد، إنجليزي. الملف 4.2 MB.
عند 200 DPI / إنجليزي، التشغيل يأخذ 28 ثانية من البداية للنهاية (بعد أن يكون النموذج مُخزّناً بالفعل من جلسة سابقة). المخرج ملف .txt بحجم 6.8 KB. التحقق من المخرج مقابل الأصلي: 1,247 كلمة على الصفحة، 14 خطأ OCR إجمالاً. معظمها التباس "I" مقابل "l" مقابل "1" في عمود معرّف الطالب. أسماء المواد خرجت نظيفة. الدرجات خرجت نظيفة. ترويسة كشف الدرجات — منطقة شعار المدرسة، حيث التقط المسح بعضاً من الختم — كانت المنطقة الوحيدة بقمامة حقيقية. التنظيف اليدوي أخذ دقيقتين في محرر نص.
نفس الوثيقة عند 300 DPI: 51 ثانية، 4 أخطاء OCR. نفس الوثيقة عند 150 DPI: 18 ثانية، 38 خطأ — أسوأ بشكل مرئي، الأرقام تأثرت بشدة. 200 DPI كان الاختيار الصحيح.
الآن اقلب المدخل: صورة هاتف لملاحظة اجتماع مكتوبة بخط اليد، مُصدّرة كـ PDF. Tesseract أرجع ملفاً فارغاً تقريباً ببضع أحرف ضالة. هذه الإجابة الصريحة — Tesseract دُرّب على نص آلة الطباعة، والكتابة اليدوية مشكلة مختلفة. لا نتظاهر.
كيف يقارن هذا بـ Adobe Acrobat و SmallPDF و iLovePDF
المقارنة الصريحة: OCR في Adobe Acrobat أفضل من أداتنا على المدخلات الصعبة، ونقول لك ذلك بصراحة.
Acrobat يُشغّل Tesseract تحت الغطاء (أو فعل تاريخياً — Adobe وضعت ML الخاصة بها فوقه منذ سنوات) بالإضافة إلى كومة من المعالجة المسبقة: إصلاح الانحراف، تصحيح التباين، اكتشاف الأسطر، ونموذج لغة بعد OCR يلتقط أخطاء التعرف الشائعة. على إيصال مجعّد مُصوّر تحت ضوء فلوريسنت، Acrobat سيُنتج نصاً قابلاً للاستخدام حيث Tesseract يُرجع عجينة. هذا يستحق ~20 دولاراً شهرياً إذا كانت وظيفتك تتضمن OCR لمدخلات حقيقية فوضوية طوال اليوم. على مسح آلة طباعة نظيف عند 200-300 DPI بلغة شائعة، الفجوة تُغلق — Tesseract غالباً 97%+، Acrobat غالباً 99%+، ولمعظم المستخدمين الفرق لا يبرر رفع الوثيقة.
SmallPDF و iLovePDF يغلفان OCR على جانب الخادم (نفس عائلة المحركات) خلف حصة ملف مجاني يومي وضغط اشتراك متكرر. يعملان. يحتفظان أيضاً بـ PDF الخاص بك على خوادمهم لعدة ساعات على الأقل، عادة أطول حسب سياسة الاحتفاظ التي لم تقرأها. للمسح الحساس، هذا الافتراضي الخاطئ. لمنشور تسويقي، لا يهم.
OCR من OnlineOCR.net و PDF24 هما الطرف الذي يبدو رخيصاً من هذا السوق — يعمل، مليء بالإعلانات، محدود حجم الملف، المخرج بعلامة مائية ما لم تشترك. إنها ما نعنيه عندما نُشير إلى الرف السفلي لـ Big Software. نحن المقايضة المعاكسة: أبطأ من لا شيء (Tesseract WASM أحادي الخيط، وحدة المعالجة المركزية لديك تقوم بالعمل)، بدون رفع، بدون حساب، بدون حصة.
ما يعتمد عليه OCR النظيف
OCR هو مطابقة أنماط على البكسلات. النمط يجب أن يكون مرئياً. خمسة أشياء تقود الدقة أكثر من أي شيء آخر:
- دقة المسح. 200-300 DPI هي الأرضية لـ OCR موثوق. الصور بـ 100 DPI من الهاتف غالباً تبدو جيدة للإنسان وتربك Tesseract — ضربات الأحرف قليلة جداً البكسلات بحيث لا يستطيع المتعرّف القفل على شكل.
- التباين. الحبر الأسود على ورق أبيض هو الأفضل. النسخ الباهتة من النسخ، حيث تتمازج الأحرف مع خلفية الصفحة، تُسقط الدقة بسرعة. اضبط التباين في برنامج ماسحك قبل حفظ PDF إذا أمكنك.
- الانحراف. صفحة ممسوحة بزاوية 5° تُقرأ أسوأ من مستقيمة. Acrobat يُصلح الانحراف تلقائياً؛ Tesseract لا. أعد المسح بصفحة أكثر استقامة أو دوّرها في عارض أولاً.
- الخط. خطوط الجسم الحديثة عند 10-12pt تُجرى OCR عليها بنظافة. الخطوط الزخرفية، blackletter، الوجوه الرفيعة جداً أو السميكة جداً، نوع العرض بأحرف كبيرة، والكتابة اليدوية كلها أصعب.
- الخلفية. الصفحات البيضاء الصلبة أو الكريمية الفاتحة سهلة. الصفحات بعلامات مائية ثقيلة، ورق الأمان (الخلفية المُسطّرة لشيك، الخلفية المنقوشة لدبلوم)، والورق القديم بتحول بني كلها ضوضاء للمتعرّف.
الإصلاح الأعلى رافعة لتشغيل OCR سيء هو إعادة المسح عند 300 DPI مع زيادة التباين. إنه أيضاً مجاني.
تحويل العرض إلى نص ليس نفس استخراج النص المُدمج
هذا الشيء الواحد الذي يخطئ فيه الناس باستمرار. هناك وظيفتان PDF-to-text تبدوان متطابقتين وليستا كذلك.
OCR للصفحة (ما تفعله هذه الأداة): كل صفحة تُعرض كـ bitmap عالي الدقة، ثم Tesseract يتعرف على الأحرف من تلك البكسلات. يعمل على PDFs الممسوحة، PDFs صورة الصفحة، أي شيء حيث النص جزء من صورة. بطيء، غير دقيق قليلاً، الخيار الوحيد لـ PDFs الصور فقط.
استخراج النص المُدمج (أداة مختلفة): يقرأ كائنات النص المُخزّنة داخل PDF مباشرة. يعمل على أي PDF وُلد من معالج كلمات، "حفظ كـ PDF" من متصفح، LaTeX، InDesign — أي شيء أنتج PDF من نص حقيقي. فوري، دقيق تماماً، لكن يُرجع لا شيء على المسح لأنه لا يوجد نص مُدمج لاستخراجه.
إذا كان PDF الخاص بك يحتوي بالفعل على نص قابل للتحديد — حاول تمييز جملة في أي عارض PDF — استخدم استخراج النص من PDF بدلاً من ذلك. إنه أسرع ودقيق. OCR للحالة حيث لا يوجد نص لاستخراجه، فقط بكسلات للتعرف عليها.
ما هو Tesseract وما ليس
Tesseract بدأ كمشروع بحث في HP Labs في الثمانينات، فُتح مصدره في 2005، وأصبح محرك OCR المُفضّل لـ Google للعقد التالي. نسخة المجتمع التي نُشغّلها هي نفس المحرك الذي يشحن داخل عدد لا يحصى من أدوات سطح المكتب، توزيعات Linux، وأنابيب معالجة الوثائق. ليس جديداً وليس سحراً — إنه ناضج، يمكن التنبؤ به، ومجاني.
ما هو جيد فيه: نص آلة الطباعة، الأبجديات اللاتينية والكيريلية الحديثة، خطوط الجسم بأحجام عادية، الكتب، العقود، المقالات، الإيصالات الممسوحة، الوثائق المطبوعة على آلة طباعة. ما هو متوسط فيه: الخطوط الصغيرة تحت 8pt، الترميز الرياضي، التخطيطات متعددة الأعمدة (يحاول، لكن أحياناً يشابك الأعمدة)، الجداول (تُعرض كنص في ترتيب القراءة، وليس كجدول). ما هو سيء فيه: الكتابة اليدوية (غير قابلة للفك بشكل أساسي بالنسبة له؛ الطباعة اليدوية الأنيقة جداً تعمل أحياناً لكن توقع أخطاء كثيرة)، CAPTCHAs (عمداً)، الخطوط المُنمّقة بشدة، أي شيء حيث الأحرف صُممت لتكون صعبة القراءة.
OCRs التجارية الأحدث — Google Cloud Vision، Microsoft Azure Document Intelligence، AWS Textract — تتفوق على Tesseract في المدخلات الصعبة لأنها تستخدم نماذج transformer حديثة مُدرّبة على مجموعات بيانات ضخمة. تتقاضى أيضاً لكل صفحة وتتطلب شحن وثيقتك إلى سحابة. لمعظم الوثائق، معظم الأيام، Tesseract في المتصفح هو المقايضة الصحيحة.
أدوات PDF ذات الصلة
أداة OCR PDF هي بلاطة واحدة في مجموعة أدوات PDF أكبر. عدد قليل من الجيران يأتون غالباً:
- استخراج النص من PDF — استخدم هذا أولاً إذا كان PDF لديك بالفعل نص قابل للتحديد. فوري ودقيق، لا حاجة لـ OCR.
- استخراج صور PDF — اسحب الصور المُدمجة من PDF كملفات منفصلة. وظيفة مختلفة من OCR.
- PDF إلى PNG — اعرض كل صفحة كصورة بدون فقدان. مفيد عندما تريد صور الصفحة بجانب النص المُتعرّف عليه.
- تقسيم PDF — اكسر PDF طويل إلى قطع قبل OCR. أداة OCR محدودة بـ 100 صفحة لكل تشغيل؛ للوثائق الأطول، قسّم أولاً.
- ضغط PDF — إذا كان مسحك ضخماً، ضغطه أولاً لن يؤذي دقة OCR عند 200 DPI وقد يُعيد عدد الصفحات تحت الحد لكل تشغيل.
Microapp يشحن كل أداة PDF على جانب المتصفح، مع نفس المقايضات منصوصة على كل صفحة. 10% من كل دولار يكسبه Microapp يذهب للجمعيات الخيرية، من القمة، مُدقق فصلياً — فالأداة التي تستخدمها يجب أن تعمل فعلاً دون إعلانات في الطريق.
الأسئلة الشائعة
كيف يقارن هذا بـ OCR في Adobe Acrobat؟
بصراحة: Acrobat أفضل على المدخلات الصعبة. Acrobat يستخدم Tesseract بالإضافة إلى طبقة ML من Adobe لإصلاح الانحراف، تصحيح التباين، ومعالجة نموذج اللغة اللاحقة — يتعامل مع المسح الفوضوي (إضاءة سيئة، صفحات مدورة، تباين منخفض، خطوط غير معتادة) بشكل أكثر موثوقية. هذه الأداة Tesseract عادي. على المسح النظيف بآلة الطباعة عند 200-300 DPI بلغة مدعومة، الفجوة صغيرة وتحصل على ميزة عدم رفع وثيقتك. على المسح الصعب، Acrobat يفوز. نُفضّل إخبارك بذلك على المبالغة في البيع.
ما اللغات التي يدعمها؟
اليوم: الإنجليزية، الإسبانية، الألمانية، الفرنسية، البرتغالية، الإيطالية، والروسية. كل لغة لديها نموذج Tesseract الخاص بها بحجم ~5-10 MB يُحمّل عند الاستخدام الأول ويُخزّن بعد ذلك. Tesseract نفسه يدعم 100+ لغة — إذا احتجت واحدة ليست في المنتقي (الصينية، اليابانية، العربية، الهندية، إلخ)، أخبرنا وسنُضيفها. الوثائق متعددة اللغات تعمل أفضل إذا اخترت اللغة المهيمنة؛ Tesseract ليس رائعاً في التبديل بين النصوص أثناء التشغيل.
هل يعمل على الكتابة اليدوية؟
تقريباً لا أبداً. Tesseract دُرّب على نص آلة الطباعة — الخطوط، الكتب، الوثائق المطبوعة على آلة طباعة الممسوحة، اللافتات. الكتابة اليدوية المتصلة غير قابلة للفك بشكل أساسي بالنسبة له؛ النص اليدوي المطبوع بأناقة يعمل أحياناً لكن يجب أن تتوقع أخطاء كثيرة. لـ OCR الكتابة اليدوية تحتاج نموذجاً مختلفاً (Google Cloud Vision و Microsoft Azure Document Intelligence كلاهما يشحن نماذج مُدرّبة على الكتابة اليدوية). لن نتظاهر بأن Tesseract يستطيع فعل ذلك.
كم سرعته؟
مرحلتان. (1) تحميل النموذج: 5-15 ثانية أول مرة تختار لغة (الـ .traineddata بحجم ~5-10 MB يُحمّل). يُخزّن بعد ذلك، فالتشغيلات اللاحقة في نفس المتصفح فورية. (2) التعرف: ~1-3 ثوانٍ لكل صفحة عند 200 DPI على حاسوب حديث، ~3-8 ثوانٍ عند 300 DPI. تقرير ممسوح من 20 صفحة عند 200 DPI ينتهي عادة في 30-60 ثانية من البداية للنهاية بعد التشغيل الأول. هناك زر إلغاء إذا غيّرت رأيك في المنتصف.
هل PDF الخاص بي فعلاً خاص؟
PDF نفسه لا يغادر المتصفح أبداً. pdfjs-dist يعرض الصفحات محلياً؛ Tesseract.js يُشغّل OCR محلياً عبر WebAssembly. طلب الشبكة الوحيد أثناء التشغيل هو جلب نموذج اللغة من CDN الخاص بـ Tesseract (jsdelivr) أول مرة — وهذا مجرد تحميل ملف ثابت عام، نفس الذي يحصل عليه الجميع، بدون أي بيانات PDF فيه. تحقق من تبويب الشبكة في متصفحك أثناء التعرف: بعد تحميل النموذج، صفر طلبات صادرة حتى تُعيد تحميل الصفحة.
لماذا النص المُتعرّف عليه فيه أخطاء؟
OCR غير كامل بطبيعته — إنه مطابقة أنماط على البكسلات. الدقة تعتمد بشكل كبير على جودة المدخل: مسح نظيف عند 300 DPI لخط كتاب قياسي بتباين جيد = غالباً 98%+. صورة هاتف عند 150 DPI لإيصال مجعّد تحت ضوء فلوريسنت = أسوأ بكثير. مشاكل شائعة: التباس 'l' مقابل 'I' مقابل '1'، 'O' مقابل '0'، الحروف الملتصقة في الخطوط القديمة، تشابك الأعمدة، اختلاط الحواشي بنص الجسم. دقّق دائماً مخرج OCR قبل الثقة به للاستخدام القانوني أو الطبي أو المالي.
هل أستطيع OCR لـ PDF يحتوي بالفعل على نص؟
تستطيع، لكنها الأداة الخاطئة. ملفات PDF بنص مُدمج (أي شيء مُصدّر من Word أو Google Docs أو LaTeX أو 'Save as PDF' من متصفح) لديها بالفعل نص قابل للتحديد — تشغيل OCR عليها يُعيد التعرف على الحروف المعروضة من الصفر، وهو أبطأ وأقل دقة من مجرد قراءة النص الموجود بالفعل. لتلك، استخدم أداة استخراج النص من PDF — فورية ودقيقة.
هل ستُضيف مخرج PDF قابل للبحث؟
نعم، هذه خطة الإصدار 2. المخرج الحالي هو ملف .txt عادي بالكلمات المُتعرّف عليها. 'PDF قابل للبحث' سيحفظ صور الصفحات الأصلية لكن يُضيف طبقة نص غير مرئية فوقها، فتستطيع تحديد، تحديد، و Ctrl-F داخل PDF كوثيقة نصية عادية. إنه بناء أكثر تعقيداً (وضع كل كلمة مُتعرّف عليها في x/y الصحيحة على الصفحة) وأردنا شحن نسخة .txt الصريحة أولاً. منتقي المخرج يظهر 'PDF قابل للبحث — قريباً' لتعرف أنه مخطط له.
ما هو حد حجم الملف؟
50 MB و 100 صفحة لكل تشغيل. OCR أثقل بكثير من استخراج النص — كل صفحة تُعرض في canvas عالي الدقة وتُعالج عبر نموذج WASM — فالحدود أضيق من أدوات PDF الأخرى لدينا. للوثائق الأكبر، قسّم PDF بأداة PDF Splitter وشغّل OCR على القطع منفصلة. على جهاز منخفض الذاكرة (هاتف، Chromebook بـ 4 GB RAM)، حتى 100 صفحة عند 300 DPI قد تنفد الذاكرة؛ انزل إلى 200 DPI أو قسّم أصغر.