قم بإنشاء ملف PDF من LaTeX في Java

يستخدم LaTeX على نطاق واسع لإنشاء الوثائق التقنية والعلمية. ملفات LaTeX (TEX أو LTX) هي مستندات مصدر مملوءة بأوامر لتحديد تنسيق المستند ، بما في ذلك النص والرموز والتعبيرات الرياضية والرسومات. يمكننا بسهولة إنشاء مستند PDF من مصدر LaTeX برمجيًا. يسمح PDF بمشاركة المستندات بتنسيق للقراءة فقط دون المساس بأسلوبها أو تخطيطها. في هذه المقالة ، سوف نتعلم كيفية إنشاء مستند PDF من ملف LaTeX المصدر في Java.

سيتم تناول الموضوعات التالية في هذه المقالة:

Java API لإنشاء ملف PDF من LaTeX

لإنشاء مستندات PDF من ملفات مصدر LaTeX ، سنستخدم Aspose.TeX for Java API. يسمح بتنضيد ملفات TeX إلى تنسيقات ملفات مختلفة مثل PDF ، XPS ، أو الصور. يرجى إما تنزيل JAR لواجهة برمجة التطبيقات أو إضافة تكوين pom.xml التالي في تطبيق Java المستند إلى Maven.

مخزن:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

الاعتماد:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-tex</artifactId>
    <version>21.11</version>
    <type>jar</type>
</dependency>

قم بإنشاء ملف PDF من ملف LaTeX TeX في Java

يمكننا إنشاء مستند PDF من ملف LaTeX (TeX) باتباع الخطوات الواردة أدناه:

  1. أولاً ، قم بإنشاء مثيل لفئة TeXOptions باستخدام طريقة consoleAppOptions().
  2. قم بتعيين تكوين TeX كـ TeXConfig.objectLaTeX().
  3. بعد ذلك ، قم بتعيين أدلة عمل الإدخال والإخراج.
  4. بعد ذلك ، حدد وحدة التحكم أو دفق الذاكرة كمحطة إخراج.
  5. بعد ذلك ، اضبط خيارات التقديم إلى تنسيق PDF.
  6. أخيرًا ، قم باستدعاء طريقة run() لمثيل الفئة TexJob الذي تم إنشاؤه حديثًا باستخدام PDF الناتج وكائن الفئة PdfDevice كوسائط.

يوضح مثال الكود التالي كيفية إنشاء PDF من ملف TeX باستخدام Java.

// يوضح مثال الكود هذا كيفية إنشاء PDF من ملف مصدر TeX.
// عمل اخراجي
String dataDir = "D:\\Files\\Tex\\";

// إنشاء خيارات التنضيد.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// حدد دليل عمل نظام الملفات للإدخال.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// حدد دليل عمل نظام الملفات للإخراج.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// حدد تدفق الذاكرة كمحطة إخراج.
options.setTerminalOut(new OutputMemoryTerminal());

// عيّن خيارات التقديم إلى تنسيق PDF.
options.setSaveOptions(new PdfSaveOptions());

// تشغيل التنضيد.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();
قم بإنشاء ملف PDF من ملف LaTeX TeX في Java

قم بإنشاء ملف PDF من ملف LaTeX TeX في Java.

قم بإنشاء ملف PDF من ملف LTX بجافا

يستخدم LaTeX امتداد ملف LTX لعلامات وخصائص التنضيد التي تحدد بنية المستند ومحتواه. يمكننا أيضًا إنشاء ملف PDF من ملف LaTeX (LTX) باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى إدخال الملف المصدر بامتداد .ltx في الخطوة الأخيرة.

يوضح مثال الكود التالي كيفية إنشاء PDF من ملف LTX باستخدام Java.

// يوضح مثال التعليمات البرمجية هذا كيفية إنشاء ملف PDF من ملف مصدر LTX.
// عمل اخراجي
String dataDir = "D:\\Files\\Tex\\";

// إنشاء خيارات التنضيد.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// حدد دليل عمل نظام الملفات للإدخال.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// حدد دليل عمل نظام الملفات للإخراج.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// حدد تدفق الذاكرة كمحطة إخراج.
options.setTerminalOut(new OutputMemoryTerminal());

// عيّن خيارات التقديم إلى تنسيق PDF.
options.setSaveOptions(new PdfSaveOptions());

// تشغيل التنضيد.
new TeXJob(dataDir + "sample.ltx", new PdfDevice(), options).run();

قم بتحويل TeX إلى XPS باستخدام Java

يمكننا أيضًا تحويل ملف LaTeX (TeX) إلى XPS باتباع الخطوات المذكورة سابقًا. ومع ذلك ، نحتاج فقط إلى تعيين XpsSaveOptions بدلاً من PdfSaveOptions في الخطوة رقم 5.

يوضح المثال التالي من التعليمات البرمجية كيفية تحويل TeX إلى XPS باستخدام Java.

// يوضح مثال الرمز هذا كيفية تحويل Tex إلى XPS.
// عمل اخراجي
String dataDir = "D:\\Files\\Tex\\";

// إنشاء خيارات التنضيد.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// حدد دليل عمل نظام الملفات للإدخال.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// حدد دليل عمل نظام الملفات للإخراج.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// حدد تدفق الذاكرة كمحطة إخراج.
options.setTerminalOut(new OutputMemoryTerminal());

// عيّن خيارات العرض في تنسيق XPS.
options.setSaveOptions(new XpsSaveOptions());

// تشغيل التنضيد.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();

قم بتحويل دليل TeX ZIP إلى دليل PDF ZIP باستخدام Java

يمكننا تحويل ملفات TeX متعددة مضغوطة في أرشيف ZIP إلى PDF مرة واحدة باتباع الخطوات الواردة أدناه:

  1. أولاً ، افتح التدفقات على أرشيفات ZIP كدليل عمل الإدخال والإخراج.
  2. بعد ذلك ، قم بإنشاء مثيل لفئة TeXOptions باستخدام طريقة consoleAppOptions().
  3. ثم قم بتعيين تكوين TeX كـ TeXConfig.objectLaTeX().
  4. بعد ذلك ، قم بتعيين أدلة الإدخال والإخراج ZIP.
  5. بعد ذلك ، حدد وحدة التحكم أو دفق الذاكرة كمحطة إخراج.
  6. بعد ذلك ، اضبط خيارات التقديم إلى تنسيق PDF.
  7. أخيرًا ، قم باستدعاء طريقة run() لمثيل الفئة TexJob الذي تم إنشاؤه حديثًا باستخدام PDF الناتج وكائن الفئة PdfDevice كوسائط.

يوضح مثال الكود التالي كيفية تحويل أرشيف TeX ZIP إلى أرشيف PDF ZIP باستخدام Java.

// يوضح مثال الرمز هذا كيفية تحويل دليل TeX ZIP إلى دليل PDF ZIP.
// عمل اخراجي
String dataDir = "D:\\Files\\Tex\\";

// افتح الدفق في أرشيف ZIP الذي سيكون بمثابة دليل عمل الإدخال.
final InputStream inZipStream = new FileInputStream(dataDir + "files.zip");

// افتح الدفق في أرشيف ZIP الذي سيكون بمثابة دليل عمل الإخراج.
final OutputStream outZipStream = new FileOutputStream(dataDir + "files-out.zip");

try {
    // إنشاء خيارات التحويل لتنسيق ObjectTeX الافتراضي على امتداد محرك ObjectTeX.
    TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

    // حدد دليل عمل أرشيف ZIP للإدخال.
    options.setInputWorkingDirectory(new InputZipDirectory(inZipStream, "files"));

    // حدد دليل عمل أرشيف ZIP للإخراج.
    options.setOutputWorkingDirectory(new OutputZipDirectory(outZipStream));

    // حدد وحدة التحكم على أنها محطة الإخراج.
    options.setTerminalOut(new OutputConsoleTerminal()); // Default. Not necessary to specify.

    // حدد خيارات الحفظ.
    options.setSaveOptions(new PdfSaveOptions());

    // قم بتشغيل الوظيفة.
    TeXJob job = new TeXJob("sample", new PdfDevice(), options);
    job.run();

    // للحصول على الناتج الناتج للنظر الكتابة. 
    options.getTerminalOut().getWriter().newLine();

    // إنهاء أرشيف ZIP الناتج.
    ((OutputZipDirectory)options.getOutputWorkingDirectory()).finish();
} finally {
  outZipStream.close();
}
قم بتحويل أرشيف TeX ZIP إلى أرشيف PDF ZIP

قم بتحويل أرشيف TeX ZIP إلى أرشيف PDF ZIP.

احصل على رخصة مجانية

يمكنك الحصول على ترخيص مؤقت مجاني لتجربة المكتبة دون قيود التقييم.

استنتاج

في هذه المقالة ، تعلمنا كيفية:

  • إنشاء مخرجات PDF من ملف LaTeX المصدر في Java ؛
  • إنشاء مستند إخراج XPS من ملف TeX برمجيًا ؛
  • قم بتحويل أرشيف TeX ZIP إلى أرشيف PDF ZIP باستخدام Java.

بالإضافة إلى ذلك ، يمكنك معرفة المزيد حول Aspose.TeX for Java API باستخدام التوثيق. في حالة وجود أي غموض ، فلا تتردد في الاتصال بنا على المنتدى.

أنظر أيضا