إنشاء ملفات PDF باستخدام LibreOffice مع الاحتفاظ بالخطوط المستخدمة
قم بإصلاح الخطوط المفقودة أو المستبدلة في ملفات PDF الخاصة ببرنامج LibreOffice Writer، واختر ملف تعريف التصدير الصحيح، وتحقق من الخطوط المضمنة قبل المشاركة.
إذا كان لديك مجلد يحتوي على ملفات Word، فيمكن لبرنامج LibreOffice تحويلها بأمر واحد. من المجلد الذي يحتوي على ملفات DOCX، أنشئ مجلد إخراج فارغًا وشغّل الأمر libreoffice --headless --convert-to pdf:writer_pdf_Export --outdir pdf *.docx. سيستخدم هذا الأمر فلتر تصدير PDF الخاص ببرنامج Writer، مع الاحتفاظ بالملفات الأصلية.
استخدم مجلد إخراج جديدًا، وتأكد من تثبيت LibreOffice، وتحقق من ملفات PDF الناتجة، بدلًا من اعتبار نجاح تنفيذ الأمر دليلًا على أن كل صفحة تبدو سليمة. سطر الأوامر أداة عملية لمعالجة الدفعات، لكنه لا يضمن ترقيم الصفحات بشكل مطابق لما هو عليه في Microsoft Word، ولا يُصلح المستندات التالفة.
في نظام لينكس، افتح نافذة طرفية في المجلد الذي يحتوي على الملفات. أنشئ مجلد الإخراج أولاً:
mkdir -p pdf
libreoffice --headless --convert-to pdf:writer_pdf_Export --outdir pdf *.docx
--headlessيُنفَّذ هذا الأمر دون فتح نافذة سطح المكتب العادية. --convert-toيختار ملف PDF كصيغة الوجهة، writer_pdf_Exportويُسمّي مُرشِّح تصدير PDF الخاص ببرنامج LibreOffice Writer، ثم --outdir pdfيُرسل النتائج إلى pdfالمجلد. يقوم البرنامج بتوسيع *.docxالملفات المطابقة قبل بدء تشغيل LibreOffice. يُوثِّق LibreOffice صيغة التحويل هذه واسم المُرشِّح في مرجع معلمات سطر الأوامر وقائمة مُرشِّحات تحويل الملفات .

يُفضّل استخدام الأمر ذي الأحرف البديلة عندما تكون جميع ملفات DOCX موجودة مباشرةً داخل مجلد إدخال واحد. فهو لا يبحث في المجلدات الفرعية. في نظام لينكس، يكون النمط حساسًا لحالة الأحرف افتراضيًا، لذا *.docxقد يتجاهل الملفات التي تنتهي بـ .DOCX. إذا أبلغت نافذة الأوامر بأن النمط غير مطابق، فاعرض قائمة الملفات وتحقق من امتداداتها قبل تغيير الأمر.
بالنسبة للمستندات الموجودة داخل مجلدات فرعية، يمكن للحلقة الحفاظ على بنية الدليل وتجنب التعارضات عندما يحتوي مجلدان على ملف بنفس الاسم. حدد inputشجرة المصدر pdfوشجرة وجهة منفصلة.
input="$PWD/input"
output="$PWD/pdf"
profile="file:///tmp/lo-batch-profile"
find "$input" -type f -iname '*.docx' -print0 |
while IFS= read -r -d '' file; do
rel="${file#"$input"/}"
dest="$output/$(dirname "$rel")"
mkdir -p "$dest"
libreoffice --headless \
-env:UserInstallation="$profile" \
--convert-to pdf:writer_pdf_Export \
--outdir "$dest" "$file"
done
-print0وتتعامل عملية المطابقة read -d ''بأمان مع المسافات ومعظم الأحرف غير المألوفة في أسماء الملفات. يمنع الملف التعريفي المنفصل هذه المهمة الدفعية من التنافس مع جلسة LibreOffice على سطح المكتب التي تستخدم نفس الملف التعريفي للمستخدم؛ راجع وثائق مرجع بدء تشغيل LibreOffice -env:UserInstallation. استخدم مسار ملف تعريفي فريد إذا كان من الممكن تشغيل مهمتي تحويل في الوقت نفسه. احتفظ بشجرة الإخراج خارج شجرة الإدخال حتى لا يتداخل البحث مع النتائج السابقة.

قد يبدو أن الأمر قد انتهى دون إنشاء ملفات، أو قد يتصل بعملية LibreOffice جارية. يمكن لنسخة سطح المكتب قيد التشغيل أن تحتفظ بملف تعريف المستخدم الافتراضي. أغلق LibreOffice وحاول مرة أخرى؛ بالنسبة للمهام غير المراقبة، -env:UserInstallationيُعد الخيار المعزول في المثال التكراري إجراءً وقائيًا مفيدًا. خصص لكل مهمة متزامنة دليل ملف تعريف خاص بها، وانتظر حتى تنتهي إحدى المهام قبل إعادة استخدام ذلك الدليل.
إذا نص الأمر على ذلك libreoffice: command not found، فقم بتثبيت LibreOffice من خلال مصدر الحزم المدعوم لنظام التشغيل الخاص بك أو استخدم المسار الكامل للملف التنفيذي. في Windows PowerShell، يمكن كتابة أمر دفعي بسيط غير متكرر على النحو التالي:
$src = (Resolve-Path .).Path
$out = Join-Path $src 'pdf'
New-Item -ItemType Directory -Force -Path $out | Out-Null
$soffice = "$env:ProgramFiles\LibreOffice\program\soffice.exe"
Get-ChildItem -File -Filter *.docx | ForEach-Object {
& $soffice --headless --convert-to pdf:writer_pdf_Export --outdir $out $_.FullName
}
قم بتعديل الإعدادات $sofficeإذا كان LibreOffice مثبتًا في مكان آخر. شغّل الأمر من مجلد المصدر، واستخدم مجلد إخراج جديد. Get-ChildItem -Fileيبحث PowerShell في هذا المجلد فقط ما لم يُطلب التكرار؛ تتطلب المهام المتكررة حلقةً تُنشئ مجلد وجهة مطابقًا لكل مسار مصدر.
يحافظ تحويل ملفات PDF على التنسيق الذي يمكن لبرنامج LibreOffice تفسيره، ولكن لا يقوم برنامجا Word وLibreOffice دائمًا بترقيم الصفحات بشكل متطابق. قد تؤدي الخطوط المفقودة، أو العناصر المضمنة غير المدعومة، أو التغييرات المُتعقبة، أو الحقول، أو الجداول المعقدة إلى تغيير فواصل الأسطر وعدد الصفحات. لضمان تناسق الطباعة، ثبّت الخطوط المطلوبة للمستندات قبل التحويل. قد تحتاج الملفات المحمية أو المشفرة بكلمة مرور إلى فتحها باستخدام بيانات اعتماد أو معالجتها يدويًا، وقد يفشل تحويل ملف DOCX تالف تلقائيًا حتى لو تم تحويل ملفات أخرى.
لا تُشغّل عملية المعالجة الدفعية بشكل متكرر في مجلد يحتوي على ملفات PDF مهمة تحمل نفس الأسماء. استخدم وجهة تخزين نظيفة أو أنشئ نسخة احتياطية من المخرجات الحالية أولًا. إذا كان أحد الملفات بالغ الأهمية، فافتحه في LibreOffice Writer وافحصه قبل الاعتماد على ملف PDF. إذا كان ترقيم الصفحات الدقيق في Microsoft Word شرطًا تعاقديًا، فقد لا يكون LibreOffice هو البرنامج المناسب؛ قارن نموذجًا توضيحيًا في التطبيق الذي يُحدد التنسيق المطلوب.

قارن أولاً عدد ملفات المصدر بعدد ملفات PDF. في نظام لينكس، تحسب هذه الأوامر عدد الملفات في مجلد مسطح:
find . -maxdepth 1 -type f -iname '*.docx' | wc -l
find pdf -maxdepth 1 -type f -iname '*.pdf' | wc -l
للتحويل المتكرر، قارن عدد الملفات في شجرتي الإدخال والإخراج بالكامل. يُعدّ تطابق عدد الملفات مؤشرًا مفيدًا، ولكنه ليس ضمانًا للجودة: فقد يتطلب الأمر مراجعة مستند تالف أو نسخة مكررة تم استبدالها. تحقق من سجل الأوامر بحثًا عن الأخطاء، وتأكد من ظهور كل اسم ملف متوقع في الوجهة.
افحص نماذج من ملفات PDF باستخدام برنامج عرض PDF. تحقق من الصفحة الأولى والأخيرة، وعدد الصفحات، والهوامش، والجداول، والرؤوس والتذييلات، والصور، وأي فواصل صفحات مهمة. إذا pdfinfoكان البرنامج مثبتًا، pdfinfo pdf/Report.pdfفإنه يوفر بيانات وصفية مثل عدد الصفحات وحجمها؛ ولكنه لا يُقيّم جودة الصورة. أعد التحويل فقط بعد تصحيح مشكلة محددة، مثل تثبيت خط مفقود أو تغيير مجلد الإخراج، ثم راجع ملفات PDF المتأثرة مرة أخرى.

تكون الدفعة جاهزة عند وجود جميع ملفات PDF المتوقعة، وفتحها دون أخطاء، واحتفاظ الصفحات المهمة بتنسيقها الأصلي. بالنسبة للأرشيفات الطويلة، احتفظ بملفات DOCX الأصلية وسجلات التحويل، حتى يُمكن تتبع أي عطل وإعادة تشغيل العملية دون استبدال أي مخرجات أخرى.
قم بإصلاح الخطوط المفقودة أو المستبدلة في ملفات PDF الخاصة ببرنامج LibreOffice Writer، واختر ملف تعريف التصدير الصحيح، وتحقق من الخطوط المضمنة قبل المشاركة.
قم بتحويل مجلد يحتوي على مستندات Word إلى PDF باستخدام أوامر LibreOffice، وتعامل مع المجلدات المتداخلة بأمان، وتحقق من الناتج قبل مشاركته.
قم بتعيين قالب LibreOffice Writer مخصص كقالب افتراضي بحيث يتم فتح المستندات الجديدة بالأنماط وتخطيط الصفحة المفضل لديك.
قم بتثبيت بيئة تشغيل Java متوافقة، وقم بتمكينها في LibreOffice، وقم باستكشاف أخطاء قائمة JRE الفارغة وإصلاحها دون تغيير الإعدادات غير ذات الصلة.
قم بإنشاء حاوية LibreOffice صغيرة، وقم بتحويل مستندات المكتب بدون واجهة مستخدم رسومية، وتحقق من مخرجات PDF مع تقييد الوصول إلى ملفات المضيف.
قلل من حجم ملفات عروض LibreOffice التقديمية الكبيرة عن طريق ضغط الصور المضمنة، واختيار إعدادات صور معقولة، والتحقق من جودة الشرائح قبل مشاركتها.
قم بمطابقة أبعاد صفحة LibreOffice مع طابعتك، وتحقق من الهوامش القابلة للطباعة، وقم بتصحيح التحجيم قبل طباعة مستند ذي حجم مخصص.
استبدل الوصول المتكرر إلى الخلايا بعمليات قراءة وكتابة النطاقات المجمعة، ثم قم بقياس النتائج وحماية الصيغ في مصنفات Calc الكبيرة.
قسّم المخطوطة الطويلة إلى فصول، وقم بتجميعها في برنامج Writer، وحافظ على اتساق الأنماط والمحتويات وعمليات التحقق من التصدير.
استخدم خيار PostgreSQL المباشر في Base لإدخال تفاصيل الخادم الخاص بك، وتسجيل الدخول، وحفظ ملف اتصال ODB، واستكشاف أخطاء الوصول الشائعة وإصلاحها.