مرحبًا ، لقد واجهت هذا الخطأ عند التحليل هنا: تجاهل الصفحة بسبب خطأ: الكائن "TableBlock" ليس له سمة "خطوط". لقد جربته للتو ووجدت أنه يمكن تحليل 0.5.0 ، لكن التأثير ليس جيدًا بشكل خاص (لكنه غير ضار) ، لكن الإصدار 0.5.1 الذي أستخدمه الآن سيحتوي على الخطأ أعلاه. لا أعرف ما إذا كانت بعض التغييرات في التعليمات البرمجية أثناء عملية تكرار الإصدار قد تسببت في حدوث مشكلات جديدة.
لقد أرسلت ملف الاختبار إلى صندوق البريد الخاص بك.
شكرا!
شكرًا لك على طرح الأسئلة وتقديم مستندات الاختبار.
0.5.1
الإصدار
Shape.py
:>>> import pdf2docx
>>> pdf2docx.shape.Shape.__file__
semantic_type()
(حول السطر 89) ، أضف سطرًا وفقًا للتعليق أدناهfor block in blocks:
if not block.is_text_block(): continue # 增加这一行判断
# not intersect yet
if block.bbox.y1 < self.bbox.y0: continue
# check it when intersected
rect_type = self._check_semantic_type(block)
if rect_type != RectType.UNDEFINED: break
# no intersection any more
if block.bbox.y0 > self.bbox.y1: break
شكرًا مرة أخرى للإشارة إلى المشكلة ، ستتم إضافة الإصلاحات الأخيرة لهاتين المشكلتين إلى الإصدار التالي.
بالإضافة إلى ذلك ، قارن تأثيرات التحويل 0.5.0
و 0.5.1
، ووجدت أنه لا يوجد تحسن كبير. لا أعرف ما هي احتياجاتك لتحويل PDF إلى كلمة ، أو استخراج النص ، أو الاحتفاظ بالتنسيق ، أو تسهيل تحرير النص؟ يمكن لبعض أدوات PDF (PDF-xchange و Foxit وما إلى ذلك) أيضًا تعديل النص مباشرةً ، وهو أكثر ملاءمة نسبيًا. لذلك لست متأكدًا من اتجاه مكتبة pdf2docx
. شكرا.
شكرًا لك ، لقد جربتها للتو وحلت مشكلتي تمامًا.
إن طلبي الحالي هو التحويل الدفعي لأنواع معينة من المستندات ، ثم الحفاظ على التنسيق قدر الإمكان. سيكون من المزعج أكثر استخدام البهلوانية أو غيرها من الأدوات. لذلك أريد حلها برمز. أعتقد أنه يمكنك إلقاء نظرة على الإطار الصلب ، مكتبة pdf2docx التي أعتقد أنها مكتبة قريبة نسبيًا. في المستقبل ، أعتقد أنه من الممكن زيادة وظيفة التعديل الذاتي من قبل المستخدمين (مثل تغيير json). لأنواع مختلفة من الملفات وأنواع مختلفة من الاحتياجات ، يمكن للجميع تحسين بعض المعلمات والشروط وفقًا لظروفهم الخاصة.
اقتراح جيد جدا ، شكرا لك.