في المقالة التالية سوف نلقي نظرة على pdftotext. هذه أداة سطر أوامر مفتوحة المصدر ستسمح لنا بذلك تحويل ملفات PDF إلى ملفات نصية عادية. ما يفعله بشكل أساسي هو استخراج البيانات النصية من ملفات PDF. هذا البرنامج مجاني ويتم تضمينه افتراضيًا في العديد من توزيعات Gnu / Linux.
سنرى في الأسطر التالية أداة للمحطة ، ولكن للغرض نفسه لاستخراج النص من ملفات PDF يمكنك أيضًا استخدام أداة رسومية مثل عيار. من الجدير بالذكر أن كلاً من الأداة الرسومية والأداة التي يمكننا استخدامها في المحطة ، لا يمكنهم استخراج النص إذا كان ملف PDF مصنوعًا من الصور (الصور الفوتوغرافية ، صور الكتب الممسوحة ضوئيًا ، إلخ.).
في معظم توزيعات Gnu / Linux ، يتم تضمين pdftotext كجزء من حزمة poppler-utils. هذه الأداة هي أداة سطر أوامر تحويل ملفات PDF إلى نص عادي. سنجد فيه العديد من الخيارات المتاحة ، بما في ذلك القدرة على تحديد نطاق الصفحات المراد تحويلها ، والقدرة على الاحتفاظ بالتخطيط المادي الأصلي للنص قدر الإمكان ، وتعيين نهايات الأسطر ، وحتى العمل مع ملفات PDF المحمية بكلمة مرور. .
قم بتثبيت pdftotext على أوبونتو
لتثبيت هذه الأداة على نظام Ubuntu الخاص بنا ، في حالة عدم تثبيتها بالفعل ، عليك فقط فتح محطة طرفية (Ctrl + Alt + T) وكتابة الأمر التالي فيها تثبيت أدوات بوبلر:
sudo apt install poppler-utils
كيفية استخدام pdftotext
تحويل ملف PDF إلى نص
بمجرد تثبيت الحزمة على نظام التشغيل الخاص بنا ، يمكننا تحويل ملف PDF إلى نص عادي. علبة حاول الحفاظ على التصميم الأصلي باستخدام الخيار -نسق مع الأمر ، ولكن يمكننا أيضًا المحاولة بدونه. في المحطة الطرفية (Ctrl + Alt + T) سيكون الأمر الذي يجب استخدامه كالتالي:
pdftotext -layout pdf-entrada.pdf pdf-salida.txt
في الأمر السابق ، يجب عليك استبداله pdf-input.pdf باسم ملف PDF الذي نهتم بتحويله ، و pdf-output.txt باسم ملف TXT الذي نريد حفظ نص ملف PDF فيه. إذا لم نحدد أي ملف نصي ناتج ، فسيقوم pdftotext تلقائيًا بتسمية الملف بنفس الاسم مثل ملف PDF الأصلي ولكن بامتداد txt. الشيء الآخر الذي يمكن أن يكون مثيرًا للاهتمام لإضافته إلى الأمر هو المسارات قبل أسماء الملفات إذا لزم الأمر (~ / Documents / pdf-input.pdf).
قم بتحويل مجموعة من صفحات PDF فقط إلى نص
إذا لم نكن مهتمين بتحويل ملف PDF بأكمله ، ونريد ذلك تضييق نطاق صفحات PDF لتحويلها إلى نص سيكون هنالك استخدم الخيار -f (الصفحة الأولى للتحويل) Y -l (الصفحة الأخيرة للتحويل) متبوعًا بكل خيار مع رقم الصفحة. سيكون الأمر المراد استخدامه مشابهًا لما يلي:
pdftotext -layout -f P -l U pdf-entrada.pdf
في الأمر السابق سوف تضطر إلى استبدل الحروف P و U بأرقام الصفحات الأولى والأخيرة لإستخراج. اسم ال pdf-input.pdf سيتعين علينا أيضًا تغييره وإعطائه اسم ملف PDF الذي نريد العمل به.
استخدم أحرف نهاية السطر
هذا سوف نكون قادرين على تحديده باستخدام -eol متبوعًا بـ mac أو dos أو unix. سيضيف الأمر التالي نهايات أسطر يونكس:
pdftotext -layout -eol unix pdf-entrada.pdf
مساعدة
إلى تحقق من الخيارات المتاحة، قم بتشغيل صفحة الدليل:
man pdftotext
يمكنك أيضا استشر خيار المساعدة بالأمر:
pdftotext --help
قم بتحويل ملفات PDF من مجلد باستخدام حلقة Bash FOR
في حالة رغبتنا في تحويل جميع ملفات PDF الموجودة في مجلد إلى ملفات نصية ، لا يدعم pdftotext تحويل الدُفعات من PDF إلى نص. هذا سنكون قادرين على القيام بذلك باستخدام حلقة Bash FOR في المحطة (Ctrl + Alt + T):
for file in *.pdf; do pdftotext -layout "$file"; done
إلى مزيد من المعلومات حول pdftotext، يمكنك استشارة موقع المشروع. إذا كنت تفضل عدم الاضطرار إلى كتابة الأوامر في الجهاز ، فيمكنك أيضًا استخدم الخدمة عبر الإنترنت للحصول على نفس النتيجة.
نعم ، إنها تعمل بشكل جيد ، لكن في بعض الأحيان يجب أن أقوم بالتعرف الضوئي على الحروف أو استخدام Libre Office Draw.
بالإضافة إلى ذلك ، هناك العديد من برامج تحرير pdf. ويبدو أن هذا لا يحدث للنص في الصور ، لذلك لا أراه عمليًا.
و Libre Office Draw بديهي وعملي.