لماذا تحويل PDF إلى Word صعب — وأصعب بالعربيّة
PDF صيغة تخطيط بصري. كلّ حرف موضوع في إحداثيّة (س،ص) محدّدة على الصفحة. لا توجد فكرة «فقرة» أو «سطر» في الملفّ الأصلي — فقط أحرف منتشرة على المستوى. التحويل إلى Word يتطلّب إعادة بناء البنية المنطقيّة من المعلومات البصريّة.
بالعربيّة، المشكلة تتضاعف. ترتيب القراءة من اليمين إلى اليسار، لكن داخل الملفّ الأحرف قد تُخزَّن بترتيب منطقي (الأوّل أوّلاً) أو بصري (اليمين أوّلاً)، ولا توجد قاعدة موحّدة. التشكيل (الفتحة، الكسرة، الضمّة) قد يخزَّن كأحرف منفصلة أو مدمجة. الأرقام داخل النصّ تكسر اتّجاه القراءة وتحتاج معالجة bidi.
كيف تعمل هذه الأداة
نستخدم pdfjs-dist، مكتبة موزيلا الرسميّة لقراءة PDF في المتصفّح. لكلّ صفحة، نطلب getTextContent() الذي يُرجع مصفوفة من قطع النصّ مع إحداثيّاتها وخصائصها.
الخوارزميّة: نجمع القطع التي تشترك في الإحداثيّة الرأسيّة (دلتا أقلّ من 2 بكسل) في سطر واحد. الأسطر المتقاربة عمودياً تُجمَع في فقرة. الفجوات الكبيرة تُولّد فقرات جديدة. النصّ يُغلَّف في HTML بـ dir="rtl" ويُحفَظ بامتداد .doc الذي يفتحه Word مباشرةً.
ما يُنقَل وما يضيع
يُنقَل: النصّ بالكامل بترتيبه القرائي، التقسيم إلى فقرات، الاتجاه RTL، خلط العربي/الإنجليزي بسياق bidi صحيح، الأرقام والرموز.
لا يُنقَل: الجداول (تتحوّل إلى نصّ مسطّح)، الصور، التنسيقات الخطّيّة (عريض، مائل)، ألوان النصّ، الرؤوس والتذييلات. هذا حدّ تقني لمعالجة المتصفّح — الأدوات السحابيّة تستخدم نماذج ML ضخمة لاستخراج الجداول وهي غير عمليّة في المتصفّح.
الـ PDF الممسوحة ضوئياً: لماذا تفشل
الملفّ الممسوح ليس PDF نصّي. هو صور مغلَّفة في حاوية PDF. getTextContent() ستُرجع نصّاً فارغاً لأنّه لا يوجد نصّ — فقط بكسلات.
الحلّ هو OCR (التعرّف الضوئي على الحروف). للعربيّة، أفضل الأدوات: Tesseract مع نموذج ara.traineddata، Google Document AI، أو Adobe Acrobat Pro. النموذج المحلّيّ Tesseract.js يعمل في المتصفّح، لكنّ النموذج وحده ~50 ميجابايت وزمن المعالجة طويل، لذا لا ندمجه افتراضياً.
ملاحظات للمستندات القانونيّة
عند تحويل عقد أو حكم قضائي للتعديل: راجع كلّ فقرة بعد التحويل. التشكيل قد يضيع في بعض الحالات، والأرقام المخلوطة بنصّ عربي قد تظهر في موضع غير صحيح. هذا يصبح حرجاً مع المبالغ والتواريخ.
أفضل ممارسة: احتفظ بـ PDF الأصلي وقارن جنباً إلى جنب أثناء التحرير. لو احتجت توقيعاً معتمداً على المستند المُحرَّر، أعد طباعته إلى PDF واحفظ نسخة مع التاريخ.