كتابة مخرجات TeX على القرص

حفظ نتيجة تحويل ملف TeX على القرص عبر C++

 

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

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

توفر هذه الصفحة مثالاً على استخدام Aspose.TeX لـ C++ API، وهي أداة قوية وسهلة الاستخدام لمعالجة المستندات وتحويلها، لتحويل ملف TeX إلى تنسيق آخر وكتابة المخرجات على القرص. لاستخدام API، يمكنك تثبيته عبر مدير حزم NuGet أو باستخدام أمر وحدة تحكم مدير الحزم الموضح أدناه.

Package Manager Console Command

PM> Install-Package Aspose.TeX.Cpp

الكود الموضح هنا يقوم بتحويل ملف TeX وحفظه كملف XPS على القرص. اتبع الخطوات التالية لإجراء هذا التحويل:

  1. يقوم كود C++ هذا بإعداد خيارات التنضيد باستخدام ملحق محرك Object TeX بتنسيق Object TeX. ويقوم بإنشاء مثيل جديد من فئة TeXOptions المقابل للتكوين المطلوب باستخدام طريقة TeXConfig::ObjectTeX() .
  2. بعد ذلك، يقوم بتجاوز اسم المهمة بـ overriden-job-name ويحدد أدلة عمل الإدخال والإخراج باستخدام الفئات InputFileSystemDirectory و OutputFileSystemDirectory . كما يقوم بتعيين مخرجات المحطة الطرفية ليتم كتابتها في ملف في دليل المخرجات باستخدام فئة OutputFileTerminal .
  3. أخيرًا، يقوم الكود بإنشاء كائن فئة TeXJob مع اسم ملف الإدخال، وكائن XpsDevice ، والخيارات التي تم إعدادها مسبقًا.

مثال على كود C++: تحويل TeX وكتابة المخرجات على القرص

using Aspose::TeX::IO;
using Aspose::TeX::Presentation.Xps;
// Create typesetting options for default Object TeX format on Object TeX engine extension.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX());
// Specify the job name. Otherwise, [*TeXJob*] constructor's first argument (file name only) will be taken as a job name.
options->set_JobName(u"overriden-job-name");
// Specify a file system working directory for input.
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(RunExamples::InputDirectory));
// Specify a file system working directory for output.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(RunExamples::OutputDirectory));
// Specify that the terminal output must be written to a file in the output working directory.
// The file name is <job_name>.trm.
options->set_TerminalOut(System::MakeObject<OutputFileTerminal>(options->get_OutputWorkingDirectory()));

// Run the typesetting job.
System::MakeObject<Aspose::TeX::TeXJob>(System::IO::Path::Combine(RunExamples::InputDirectory, u"hello-world"),
    System::MakeObject<XpsDevice>(), options)->Run();

TeX What is TeX File Format

TeX (تقنية تاِك) هو نظام تنضيد نصوص يُستخدم لإنشاء مستندات ذات جودة طباعة عالية، خاصة للمعادلات الرياضية. يُكتب المستند بصيغة نصية تُعالجها محركات TeX (مثل pdfTeX أو XeTeX) لتوليد مخرجات مثل PDF أو DVI. يوفر تحكمًا دقيقًا في التخطيط، الخطوط، والرياضيات.