توثيق PDFLang — العربية

دليل كامل للغة .pdfl ولأداة سطر الأوامر pdfl — الإصدار 0.6.0.

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

عن لغة الأداة. رسائل pdfl (التشخيصات والأخطاء ومساعدة سطر الأوامر وعناوين التقارير) بالإنجليزية، جريًا على عادة أدوات سطر الأوامر. هذا التوثيق بالعربية، لكن الفحص الفاشل يعرض شيئًا مثل page 7: 324% ink (limit 300%). أما الرسائل التي تكتبها أنت في نصوصك البرمجية فتظهر كما كتبتها تمامًا، باللغة التي اخترتها.

الفهرس

الفصل المحتوى
1. اللغة الدليل الكامل: الفحوص، التأكيدات، الأنواع، الوحدات، الكتل، الدوال، import، rule
2. أنواع المستند doc وpage وfont وimage وregion — كل الخصائص والتوابع
3. text:: النص: الاستخراج، التوحيد، البحث، تدقيقات برازيلية، البيانات الشخصية
4. struct:: البنية والبيانات الوصفية: الكائنات، XMP، الأمان، البصمات
5. visual:: الصور: الدقة، المقارنة البصرية، pHash، SSIM، الجودة
6. prepress:: ما قبل الطبع: تغطية الحبر، الفصل اللوني، الألوان الخاصة، الخطوط، الأُطر
7. codes:: الباركود ورمز QR: الكشف، فك الترميز، التحقق
8. fix:: التوحيد: الأُطر، الصفحات، العلامات المائية، الدمج/التقسيم، التحسين
9. data:: بيانات خارجية: المسارد، مجموعات البيانات، جداول البحث
10. المكتبة القياسية توابع القوائم والنصوص، الدوال العامة
11. سطر الأوامر run وcompare وwatch وfix وinspect وlint وfmt وdoc وpack وadd
12. وصفات عملية حالات كاملة: مطبعة، دار نشر قانونية، مختبر أدوية، CI/CD

البداية في ثلاثين ثانية

أنشئ الملف my_profile.pdfl:

// كل نص برمجي مجموعة من الفحوص. الفحص يجمع التدقيقات المترابطة
// ويصبح قسمًا في التقرير.
check "Basic structure" {
  // require: الرسالة تُولَّد تلقائيًا من التعبير نفسه
  require doc.page_count > 0

  // assert: بالرسالة التي تكتبها أنت
  assert doc.title != "", "PDF has no title in its metadata"
}

التنفيذ:

pdfl run my_profile.pdfl document.pdf

يخرج التقرير بصيغة JSON على المخرج القياسي. ورمز الخروج يوضح النتيجة: 0 نجح كل شيء، 1 تحذيرات فقط، 2 أخطاء تدقيق، 3 خطأ نحوي.

أعراف هذا التوثيق

  • لكل دالة توقيعها، وما تفعله، وما تُرجعه، ومثال مشروح.
  • الوسائط بين قوسين مربعين اختيارية: calculate_tac([page]).
  • «ابتداءً من 1» يعني أن الصفحة الأولى هي 1 لا 0 — اللغة تعدّ كما يعدّ الناس لا كما يعدّ المبرمجون.
  • المقاسات دائمًا بالنقاط (1 pt = 1/72 بوصة). وحروف الوحدات (3mm و1in) تقوم بالتحويل نيابة عنك.

لغات أخرى: English · Português (Brasil) · الإسبانية · 日本語 · 中文 · Français · Deutsch