إنشاء تنسيق TeX مخصص

قم بكتابة ملف TeX بتنسيق مخصص عبر C# .NET

 

TeX هي لغة برمجة تستخدم لكتابة برامج لنظام إعداد مستندات الكمبيوتر والذي يسمى أيضًا TeX (محرك TeX) والغرض الرئيسي منها هو المساعدة في كتابة الأوراق الرياضية أو التقنية. تتضمن لغة TeX أوامر للتحكم في عملية التنضيد، سواء عن طريق تفعيل بعض الإجراءات أو عن طريق ضبط بعض المعلمات الداخلية للمحرك. يمكن أن يكون استخدام بناء جملة لغة TeX أكثر إنتاجية إذا قمت بتحديد وحدات الماكرو وقيم المعلمات لراحتك. يمكنك وضع هذه التعريفات في ملف TeX، والذي ستقوم بتضمينه في بداية كل ملف TeX آخر يحتوي على بيانات مستند فعلية. أو يمكنك تجنب ذلك عن طريق التخلص من الحالة الداخلية للمحرك بعد تحميل التعريفات. يسمى هذا التفريغ الثنائي بـ تنسيق ملف. بعد ذلك ستحتاج فقط إلى تحديد اسم التنسيق (اسم ملف تنسيق TeX) قبل تنضيد أي ملف مستند. سيقوم محرك TeX بتحميل ملف التنسيق هذا بشكل أسرع بكثير من التنسيق الموجود في بناء جملة TeX نظرًا لأن ملفات التنسيق لا تحتاج إلى معالجة.

في الوقت الحاضر، التنسيق الأكثر شيوعًا هو LaTeX. من المستبعد جدًا أن تحتاج إلى التنسيق الخاص بك نظرًا لأن LaTeX يغطي نطاقًا واسعًا جدًا من الأغراض. ولكن إذا كنت في حاجة إليها في أي وقت، فإن حل Aspose.TeX API يسمح لك بإنشاء تنسيق TeX الخاص بك. ستجد هنا معلومات تشرح كيفية إنشاء ملفات ذات تنسيق مخصص، وكيفية تنضيد المستندات باستخدام تنسيق مخصص. لهذا نحتاج:

  • Aspose.TeX for .NET API وهي واجهة برمجة تطبيقات غنية بالميزات وقوية وسهلة الاستخدام لمعالجة المستندات وتحويلها لمنصة C#.

  • افتح مدير الحزم NuGet، وابحث عن Aspose.TeX، وقم بتثبيته. يمكنك أيضًا استخدام الأمر التالي من وحدة تحكم إدارة الحزم

Package Manager Console Command

PM> Install-Package Aspose.TeX

خطوات إنشاء ملف TeX مخصص C#.

  1. استخدام طريقة ConsoleAppOptions() لطريقة TeXOptions ، إنشاء خيارات محرك TeX لامتداد محرك Object TeX في حالته الأولية (بدون تنسيق على الإطلاق).
  2. باستخدام فئة InputFileSystemDirectory ، حدد دليل عمل نظام الملفات للإدخال.
  3. استخدم فئة OutputFileSystemDirectory لتحديد دليل عمل نظام الملفات للإخراج.
  4. قم بإنشاء ملف التنسيق عن طريق استدعاء طريقة 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#.

  1. قم بإنشاء موفر التنسيق باستخدام فئة InputFileSystemDirectory .
  2. أنشئ خيارات تحويل لتنسيقك المخصص بناءً على امتداد محرك Object TeX باستخدام طريقة ConsoleAppOptions() الخاصة بـ TeXOptions فئة.
  3. حدد دليل عمل الإدخال إذا لم يتم توفير الإدخال الرئيسي كدفق. استخدم فئة InputFileSystemDirectory للقيام بذلك.
  4. حدد دليل عمل نظام الملفات للإخراج باستخدام فئة OutputFileSystemDirectory .
  5. قم بإنشاء كائن من فئة 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 ما هو TeX تنسيق الملف

إن TeX ليس في الواقع تنسيقًا. إنها في نفس الوقت لغة برمجة وأيضًا محرك مترجم يفهم هذه اللغة. ملف TeX هو مستند تم إنشاؤه في LaTeX. يمكن أن يتضمن هذا المستند رسومات وجداول ورموز وقوائم وصيغ ومعادلات.