سؤال

أحاول تحويل المستندات من هتمل ، تكست إلى بدف ، أود والعكس بالعكس..ولكن أود فقط إلى بدف يبدو للعمل..لا يتم تحويل تنسيقات ملفات أخرى

ها هي أوامري

libreoffice --headless --convert-to pdf test.html [Not working]
libreoffice --headless --convert-to odt test.html [Not working]
libreoffice --headless --convert-to pdf test.docx [Not working]
libreoffice --headless --convert-to pdf test.odt  [Working]
هل كانت مفيدة؟

المحلول

هذا هو قضية معروفة في LibreOffice الذي تم إصلاحه في الإصدار 5.3.0.قبل هذا الإصلاح، عند تشغيل مثيل LibreOffice --convert-to أو أي أمر آخر سينتهي بصمت دون القيام بأي شيء.

إذا كان الإصدار الخاص بك أقدم من ذلك، فيمكنك التفكير في الحل الذي اقترحه فرانك يين هنا.يتم ذلك بإغلاق جميع مستندات LibreOffice المفتوحة قبل تشغيل التحويل.

إذا لم تتمكن من إغلاق جميع مستندات LibreOffice المفتوحة لتشغيل التحويل، أو إذا وجدت ذلك غير مريح، فيمكنك تجربة حل اقترح في التعليقات على الخطأ الأصلي.

إذا كان لديك نسخة LibreOffice قبل 4.5 يجري

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--headless --convert-to pdf test.docx

إذا كنت تستخدم إصدار LibreOffice بين 4.5 و 5.3 يجري

soffice -env:UserInstallation=file:///$HOME/.libreoffice-headless/ \
--convert-to pdf test.docx

هنا $HOME/.libreoffice-headless هو دليل ملف تعريف جديد يختلف عن ملف تعريف LibreOffice الرئيسي الخاص بك.

نصائح أخرى

حاول إغلاق جميع مثيلات تشغيل libreoffice قبل تنفيذ الأمر.كان هذا السبب الجذري لألمي.

المشكلة الحقيقية هي أن سطر الأوامر LibreOffice / Soffice لا يقدم أي رسالة خطأ أو معلومات تصحيح الأخطاء، لذلك كل شيء تخمين.إذا كنت متروكا لذلك، فجرب سترما تلميحات.

في حالتي (Linux)، لم يكن لدي الحزم الصحيحة المثبتة - على سبيل المثال، لتحويل جداول البيانات، هناك حاجة إلى LibreOffice-Calc (DUH)، وكذلك LibreOffice-Kistless (Double-duh).لكن سطر الأوامر لن يخبرك بذلك - إنه معلق فقط أو يدير ولا يفعل أي شيء.

الأعمال التالية

libreoffice  --invisible -convert-to pdf myFile.html

libreoffice --invisible -convert-to docx myFile.odt

الخيار --invisible لا تبدأ واجهة المستخدم الرسومية ولكن يعطي بعض القرائن على سطر الأوامر ما يحدث.

اختبار على لينكس منت 13.

هذا عملت بالنسبة لي على LibreOffice 4.2 / Linux:

giveacodicetagpre.

ائتمان: http://ask.libreoffice.org/en/question/14130/how-do-i-Install-filters-for-the-soffice-command/

بالنسبة لي.المشكلة التي كان لديها كانت تلك التي لا تعمل، على الإطلاق (فقط إرجاع في 15 دقيقة ثواني)، إذا كانت عملية LibreOffice المحلية تحتوي بالفعل على المستند مفتوحا.

تأكد من أنك تقوم فقط بعمليات بلا مبكرة في وثيقة غير مفتوحة بالفعل في LibreOffice.

بالنسبة لي، كانت الحزمتين التاليتين هي الحد الأدنى اللازم للحصول على دوكس بلا رأس مقدم من PDF يعمل على Centos 7:

giveacodicetagpre.

في نظام التشغيل Windows واجهت المشكلة التالية:حاولت تحويل جميع ملفات DOC إلى PDF باستخدام الأمر التالي:

soffice --invisible --convert-to pdf *.doc

لقد فشل دون أي رسالة خطأ.لكنها نجحت عندما أضع اسم ملف لأحد الملفات بدلاً من *.doc.لذا يبدو أن هناك مشكلة في حل أحرف البدل *.doc.ما فعلته هو تنفيذ نفس الأمر تمامًا كما هو مذكور أعلاه ولكن من Git Bash بدلاً من موجه الأوامر العادي (cmd.exe).انها عملت.ماذا لديك أيضا: في Git Bash يعرض معلومات التقدم والرسائل الإعلامية!

لذلك نصيحتي هي:إذا كنت تقوم بتشغيل soffice.exe على Windows ولم تحصل على أي إخراج، فقم بتشغيل الأمر من Git Bash (يمكنك الحصول على Git Bash عن طريق تثبيت جيت لنظام التشغيل Windows)

واحدة من المشاكل التي واجهتها مع LibreOffice كانت المشكلة مع المساحات الفارغة.بعد أن أشعلت الاسم ("Test-Document.docx" بدلا من اختبار "Documnet.Docx") يعمل بشكل مثالي. من الإصدار 4.2.8.2 - 5.3.

اضطررت إلى تثبيت xvfb حزمة (yum install xorg-x11-server-Xvfb) ، هو xserver دمية.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top