واجهة برمجة تطبيقات روبي مفتوحة المصدر لإنشاء مستندات Word DOCX
مكتبة روبي مجانية رائدة تمكّن مطوري البرمجيات من إنشاء مستندات Word، إضافة وتخصيص الجداول، إدراج الصور، تطبيق فواصل الأسطر وتنسيق النص في مستندات Word داخل تطبيقات Ruby.
ما هي مكتبة PureDocx؟
PureDocx هي مكتبة روبي قوية ومفتوحة المصدر تسهّل عملية إنشاء ملفات Microsoft Word .docx داخل تطبيقات Ruby. توفر طريقة مباشرة وبديهية لتوليد مستندات Word برمجيًا، مما يجعلها أداة ممتازة للمطورين الذين يحتاجون إلى إنشاء تقارير أو فواتير أو أي نوع آخر من المستندات سريعًا. في جوهرها، تتيح لك PureDocx تعريف مستند يحتوي على رأس ومحتوى. سيظهر الرأس في كل صفحة من المستند، بينما يتدفق المحتوى من صفحة إلى أخرى.
مكتبة PureDocx هي مكتبة رائعة لأي مطور Ruby يحتاج إلى إنشاء ملفات .docx. واجهتها البسيطة، ميزاتها المرنة، وطبيعتها المفتوحة تجعلها خيارًا مميزًا لمجموعة واسعة من التطبيقات. واجهتها النظيفة والبديهية تتيح للمطورين إنشاء مستندات معقدة بأقل قدر من الشيفرة. بدعم النصوص، الصور، والجداول، تمنحك PureDocx المرونة لإنشاء مجموعة متنوعة من المستندات. لغة DSL الأنيقة، الدعم للرؤوس/التذييلات، الصور والجداول، والتوافق مع حزم المكتبية الشهيرة تجعلها خيارًا ممتازًا لتوليد التقارير وأتمتة المستندات.
البدء مع PureDocx
الطريقة الموصى بها لتثبيت PureDocx هي باستخدام RubyGems. يرجى استخدام الأمر التالي لتثبيت سلس.
تثبيت المستندات عبر RubyGems
$ gem 'puredocx
// Or install it yourself as
$ gem install PureDocx
You can also download it directly from GitHub.إنشاء مستندات Word عبر Ruby
تتضمن مكتبة PureDocx المفتوحة المصدر دعمًا كاملًا لإنشاء وإدارة مستندات Word داخل تطبيقات Ruby. في جوهرها، تسمح لك PureDocx بتعريف مستند يتضمن رأسًا ومحتوى. سيظهر الرأس في كل صفحة من المستند، بينما يتدفق المحتوى من صفحة إلى أخرى. يمكن لمطوري البرمجيات تطبيق أنواع مختلفة من التنسيق، إضافة جداول وصور وإدراج محتوى بسهولة. إليكم مثالًا أساسيًا يوضح كيفية إنشاء مستند Word باستخدام أوامر Ruby.
كيفية إنشاء مستند Word داخل تطبيقات Ruby؟
PureDocx.create('my_document.docx') do |doc|
doc.header([
doc.text('My Awesome Document Header')
])
doc.content([
doc.text('This is the main content of my document.')
])
end
تطبيق تنسيق النص داخل المستندات عبر Ruby
تجعل مكتبة PureDocx للروبي من السهل على مطوري البرمجيات إنشاء وتطبيق أنواع مختلفة من الأنماط والتنسيقات على المحتوى داخل مستندات Word. توفر المكتبة مجموعة من الخيارات لتنسيق النص، بما في ذلك الأساليب العريضة أو المائلة، ضبط حجم الخط، محاذاة النص إلى اليسار أو الوسط أو اليمين وغيرها الكثير. إليكم مثالًا بسيطًا يوضح كيف يمكن للمطورين تطبيق خيارات تنسيق مختلفة على النص داخل مستند Word.
كيفية تطبيق تنسيق النص داخل مستندات Word عبر واجهة برمجة تطبيقات Ruby؟
إنشاء وتخصيص الجداول في ملفات Word عبر Ruby
الجداول وسيلة قوية لتنظيم وعرض البيانات داخل مستنداتك. تجعل مكتبة PureDocx من السهل إنشاء جداول بتنسيق مخصص داخل مستندات Word عبر مكتبة Ruby. يمكن لمطوري البرمجيات أيضًا تخصيص مظهر جداولهم باستخدام مجموعة متنوعة من الخيارات، مثل ضبط عرض الجدول، تحديد الحشو العلوي واليساري لخلايا الجدول، تحديد الجوانب التي لا يجب أن يكون لها حد، ضبط عرض الأعمدة الفردية، تحديد الجوانب التي يجب أن يكون لها حد عريض، وما إلى ذلك. يوضح المثال التالي كيف يمكنك إنشاء جدول بسيط داخل تطبيقات Ruby.
كيفية إنشاء جدول بسيط داخل تطبيقات Ruby؟
table_data = [
[{ column: [doc.text('Column 1')] }, { column: [doc.text('Column 2')] }],
[{ column: [doc.text('Row 2, Col 1')] }, { column: [doc.text('Row 2, Col 2')] }]
]
doc.table(table_data)
كيفية تخصيص جدول بتنسيق مخصص عبر واجهة برمجة تطبيقات Ruby؟
table_options = {
table_width: 8000,
paddings: { top: 100, left: 100 },
sides_without_border: [:top, :bottom],
bold_sides: [:left, :right],
col_width: [4000, 4000]
}
doc.table(table_data, table_options)
تطبيق الترميزات الصفحية، فواصل الأسطر والصفحات الجديدة عبر Ruby
توفر مكتبة PureDocx المفتوحة المصدر خيارات متنوعة للتعامل مع المستندات داخل تطبيق Ruby. تتيح لك المكتبة إضافة أرقام الصفحات إلى المستندات بسهولة. يمكنك تحديد موقع أرقام الصفحات في التذييل كـ 'left' أو 'right' أو 'center'. يمكنك استخدام طريقة brake لإضافة فاصل سطر وطريقة new_page لبدء صفحة جديدة. يوضح المثال التالي كيفية تطبيق فاصل سطر وإضافة صفحات جديدة داخل مستندات Word.
كيفية تطبيق فواصل الأسطر وإضافة صفحات جديدة عبر Ruby؟
doc.text('This is the first line.')
doc.brake
doc.text('This is the second line.')
doc.new_page
doc.text('This is on a new page.')