\usepackage{make}
ابنِ سيناريو في Make يجمّع مستندات LaTeX إلى ملفات PDF احترافية دون الحاجة إلى خادم. استخدم وحدة HTTP لاستدعاء FormaTeX، ثم وجّه المخرجات إلى Google Drive أو البريد الإلكتروني أو أي تطبيق متصل.
\section{ما هو Make}
Make (المعروف سابقًا باسم Integromat) منصة أتمتة مرئية تتيح لك ربط التطبيقات وتصميم سير عمل معقد يُسمى السيناريوهات. وعلى عكس Zaps الخطية، تدعم سيناريوهات Make التفرّع والتكرار ومعالجة الأخطاء وتحويل البيانات، مما يجعلها مثالية لخطوط معالجة PDF المتطورة التي تحتاج إلى منطق شرطي أو معالجة دفعية.
وحدة HTTP لأي API
ترسل وحدة HTTP المدمجة في Make طلبات إلى أي نقطة نهاية REST، بما فيها واجهة التجميع في FormaTeX.
منشئ سيناريوهات مرئي
اسحب العقد وأفلتها لتصميم خط معالجة PDF بالكامل، مع مسارات للأخطاء وتوجيه شرطي.
أكثر من 1,500 موصّل تطبيقات
وجّه ملفات PDF المجمَّعة إلى Google Drive أو Dropbox أو OneDrive أو البريد الإلكتروني أو Slack أو أي خدمة متصلة أخرى.
\section{إعداد السيناريو}
أضف وحدة مشغّل
افتح Make وأنشئ سيناريو جديدًا. أضف وحدة مشغّل: Google Sheets (Watch Rows) أو Airtable (Watch Records) أو مشغّل Webhook إذا أردت دفع البيانات من تطبيقك. توفر هذه الوحدة البيانات التي ستُدرجها في قالب LaTeX.
أضف وحدة HTTP ← Make a Request
Add an HTTP module and choose "Make a Request". Set the URL to https://api.formatex.io/api/v1/compile, method to POST, and body type to Raw. Set the content type header to application/json. In the Request content field, paste your JSON payload.
اضبط الترويسة X-API-Key
في قسم الترويسات بوحدة HTTP، أضف ترويسة باسم X-API-Key وقيمتها مفتاح FormaTeX الخاص بك. استخدم Connections أو Environment Variables المدمجة في Make لتخزين المفتاح بأمان بدلًا من لصقه مباشرةً في الحقل.
وجّه ملف PDF إلى Google Drive أو البريد الإلكتروني
The HTTP module response body is the raw PDF binary. Add a Google Drive → Upload a File module and map the response body as the file data. Set the file name dynamically using fields from your trigger — e.g. report-{{formatDate(1.date; 'YYYY-MM')}}.pdf.
\section{حمولة JSON}
الصق هذا في حقل Request content في وحدة HTTP. تشير {{1.title}} وما يشابهها من تعبيرات إلى حقول الوحدة 1 (المشغّل لديك). سيستبدل Make القيم الحية قبل إرسال الطلب إلى FormaTeX.
{
"source": "\\documentclass{article}\n\\usepackage[T1]{fontenc}\n\\begin{document}\n\\title{{{1.title}}}\n\\author{{{1.author}}}\n\\date{\\today}\n\\maketitle\n\n{{1.body_text}}\n\n\\end{document}",
"engine": "pdflatex",
"filename": "{{1.document_name}}.pdf"
}\section{Templates}
يقيّم Make جميع تعبيرات {{n.field}} داخل جسم JSON قبل إرسال طلب HTTP. هذا يعني أنه يمكنك إدراج أي قيمة ديناميكية، كالأسماء والتواريخ والأرقام وصفوف الجداول، مباشرةً في سلسلة LaTeX المصدرية.
هرّب أحرف LaTeX الخاصة
لا يهرّب Make أحرف LaTeX تلقائيًا. إذا كانت قيمة حقل قد تحتوي على &، أو %، أو $، أو #، فأضف محوّل نصوص لاستبدالها قبل الإدراج في شيفرة LaTeX المصدرية.
محتوى متعدد الأسطر
Use Make's replaceAll() function to convert newlines in text fields to \\\\ (LaTeX line break) before injecting long text blocks into the document body.
أقسام شرطية
استخدم التعبير if() في Make لتضمين أقسام LaTeX كاملة أو حذفها بحسب بيانات المشغّل، مثلًا تضمين كتلة التوقيع فقط إذا لم يكن الحقل فارغًا.
التكرار على المصفوفات
استخدم وحدة Iterator لمعالجة حقول المصفوفات (مثل بنود الفاتورة) وبناء سلسلة صفوف tabular في LaTeX، ثم اجمعها باستخدام Array Aggregator قبل الإدراج.
\end{make}
احصل على مفتاح FormaTeX API، وأضف وحدة HTTP إلى السيناريو، وأطلق ملفات PDF احترافية بـ LaTeX من أي مشغّل في Make خلال دقائق.