إنشاء تنسيق TeX مخصص
تنسيق ملف TeX بتنسيق مخصص عبر C# .NET
TeX هي لغة برمجة تُستخدم لكتابة برامج لنظام إعداد مستندات كمبيوتر يُسمى أيضاً TeX (محرك TeX). غرضها الأساسي هو المساعدة في كتابة الأوراق الرياضية أو التقنية. تتضمن لغة TeX أوامر للتحقق من عملية التنسيق، سواء عن طريق إطلاق بعض الإجراءات أو عن طريق ضبط بعض المعلمات الداخلية للمحرك. يمكن أن يكون استخدام بناء جملة لغة TeX أكثر إنتاجية إذا قمت بتعريف وحدات الماكرو وقيم المعلمات لراحتك. يمكنك وضع هذه التعريفات في ملف TeX، والذي ستضمنه في بداية كل ملف TeX آخر يحتوي على بيانات المستند الفعلية. أو يمكنك تجنب ذلك عن طريق تفريغ الحالة الداخلية للمحرك بعد تحميل التعريفات. يسمى هذا التفريغ الثنائي ملف تنسيق. ومن ثم ستحتاج فقط إلى تحديد اسم التنسيق (اسم ملف تنسيق TeX) قبل تنسيق أي ملف مستند. سيقوم محرك TeX بتحميل ملف التنسيق هذا بشكل أسرع بكثير من التنسيق في بناء جملة TeX لأن ملفات التنسيق لا تحتاج إلى معالجة.
في الوقت الحاضر، التنسيق الأكثر شيوعاً المستخدم هو LaTeX. من غير المحتمل جداً أن تحتاج إلى تنسيقك الخاص لأن LaTeX يغطي مجموعة واسعة جداً من الأغراض. ولكن إذا احتجت إليه في أي وقت، فإن حل واجهة برمجة تطبيقات Aspose.TeX يسمح لك بإنشاء تنسيق TeX الخاص بك. ستجد هنا معلومات توضح كيفية إنشاء ملفات بتنسيق مخصص، وكيفية تنسيق المستندات باستخدام تنسيق مخصص. لهذا نحتاج إلى:
واجهة برمجة تطبيقات Aspose.TeX لـ .NET وهي واجهة برمجة تطبيقات غنية بالميزات وقوية وسهلة الاستخدام لمعالجة المستندات وتحويلها لمنصة C#.
افتح مدير حزم NuGet، وابحث عن Aspose.TeX، وقم بتثبيته. يمكنك أيضاً استخدام الأمر التالي من Package Manager Console
Package Manager Console Command
PM> Install-Package Aspose.TeX
خطوات إنشاء ملف TeX مخصص بلغة C#.
- باستخدام أسلوب ConsoleAppOptions() لفئة TeXOptions ، قم بتهيئة خيارات محرك TeX لملحق محرك Object TeX في حالته الأولية (بدون أي تنسيق على الإطلاق).
- باستخدام فئة InputFileSystemDirectory ، حدد دليل عمل نظام الملفات للمدخلات.
- استخدم فئة OutputFileSystemDirectory لتحديد دليل عمل نظام الملفات للمخرجات.
- قم بإنشاء ملف التنسيق عن طريق استدعاء أسلوب TeXJob.CreateFormat() . يجب أن يكون الاسم الذي تقدمه كوسيطة هو اسم ملف TeX الخاص بك الذي يحتوي على التنسيق. سيكون لملف التنسيق الثنائي نفس الاسم.
مثال على كود C#: إنشاء ملف تنسيق مخصص
using Aspose.TeX.IO;
using Aspose.TeX;// Create the TeX engine options for no format upon ObjectTeX engine extension.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectIniTeX);
// Specify a file system working directory for the input.
options.InputWorkingDirectory = new InputFileSystemDirectory(RunExamples.InputDirectory);
// Specify a file system working directory for the output.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(RunExamples.OutputDirectory);
// Run the format creation.
TeXJob.CreateFormat("customtex", options);خطوات تنسيق ملف TeX بتنسيق مخصص بلغة C#.
- قم بإنشاء موفر التنسيق باستخدام فئة InputFileSystemDirectory .
- قم بإنشاء خيارات التحويل لتنسيقك المخصص بناءً على ملحق محرك Object TeX باستخدام أسلوب ConsoleAppOptions() لفئة TeXOptions .
- حدد دليل العمل للمدخلات إذا لم يتم توفير المدخل الرئيسي كدفق. استخدم فئة InputFileSystemDirectory للقيام بذلك.
- حدد دليل عمل نظام الملفات للمخرجات باستخدام فئة OutputFileSystemDirectory .
- قم بإنشاء كائن من فئة TeXJob مع مثيل من XpsDevice وقم بتشغيل المهمة عن طريق استدعاء أسلوب Run(). نعرض هنا أيضاً كيفية تمرير ملف إدخال TeX الرئيسي كدفق.
مثال على كود C#: تنسيق ملف TeX بتنسيق مخصص
using Aspose.TeX.IO;
using Aspose.TeX.Presentation.Xps;
using Aspose.TeX.ResourceProviders;
using System.IO;
using System.Text;// Create the format provider using the file system input working directory.
// We use the project output directory as our custom format file is supposed to be located there.
using (FormatProvider formatProvider =
new FormatProvider(new InputFileSystemDirectory(RunExamples.OutputDirectory), "customtex"))
{
// Create conversion options for a custom format upon ObjectTeX engine extension.
TeXOptions options = TeXOptions.ConsoleAppOptions(TeXConfig.ObjectTeX(formatProvider));
options.JobName = "typeset-with-custom-format";
// Specify the input working directory. This is not required here as we are providing the main input as a stream.
// But it is required when the main input has dependencies (e.g. images).
options.InputWorkingDirectory = new InputFileSystemDirectory(RunExamples.InputDirectory);
// Specify a file system working directory for the output.
options.OutputWorkingDirectory = new OutputFileSystemDirectory(RunExamples.OutputDirectory);
// Run the job.
new TeXJob(new MemoryStream(Encoding.ASCII.GetBytes(
"Congratulations! You have successfully typeset this text with your own TeX format!\\end")),
new XpsDevice(), options).Run();
}التعليمات
1. ما هو قالب LaTeX؟
القالب عبارة عن مجموعة محفوظة من الخصائص أو الإعدادات أو البنية التي يمكن تطبيقها على مستند تم إنشاؤه حديثًا لتوفير الوقت. بالنسبة إلى LaTeX، يمكن أن يكون هذا ملفًا يحتوي على معلومات حول تنسيق الصفحة والخطوط وفئة المستند والحزم المضمنة وما إلى ذلك.
2. كيف يمكنني استخدام قوالب LaTeX؟
إذا كنت لا تستخدم أي برامج إضافية وكان القالب مجرد ملف TeX، فما عليك سوى فتحه وبدء العمل. فقط ضع في اعتبارك أنك لا تحفظ التغييرات بشكل صحيح في هذا المستند، ولكن استخدم خيار “حفظ باسم” بدلاً من ذلك.
3. كيفية ضبط نوع مستند LaTeX؟
لتحديد نوع مستند في LaTeX مثل مقالة أو كتاب أو عرض تقديمي، استخدم الأمر \documentclass{...} مع أحد أسماء الفئات المدعومة بين قوسين.
4. كيفية إنشاء تنسيق TeX مخصص؟
لإنشاء تنسيق TeX مخصص باستخدام Aspose.TeX API Solution، عليك إنشاء خيارات محرك TeX المناسبة أولاً. ثم تقوم بتحديد دليل عمل نظام الملفات للإدخال والإخراج. وأخيرًا، يمكنك إنشاء التنسيق عن طريق استدعاء الأسلوب TeXJob.CreateFormat().
TeX What is TeX File Format
TeX (تقنية تاِك) هو نظام تنضيد نصوص يُستخدم لإنشاء مستندات ذات جودة طباعة عالية، خاصة للمعادلات الرياضية. يُكتب المستند بصيغة نصية تُعالجها محركات TeX (مثل pdfTeX أو XeTeX) لتوليد مخرجات مثل PDF أو DVI. يوفر تحكمًا دقيقًا في التخطيط، الخطوط، والرياضيات.