สร้างรูปแบบ TeX แบบกำหนดเอง

จัดเรียงพิมพ์ไฟล์ TeX ในรูปแบบที่กำหนดเองผ่าน C# .NET

 

TeX เป็นภาษาโปรแกรมที่ใช้เขียนโปรแกรมสำหรับระบบเตรียมเอกสารคอมพิวเตอร์ซึ่งเรียกอีกอย่างว่า TeX (เอ็นจิ้น TeX) วัตถุประสงค์หลักคือเพื่อช่วยในการเขียนบทความทางคณิตศาสตร์หรือทางเทคนิค ภาษา TeX มีคำสั่งเพื่อควบคุมกระบวนการจัดพิมพ์ ไม่ว่าจะโดยการกระตุ้นการดำเนินการบางอย่าง หรือโดยการปรับพารามิเตอร์ภายในบางอย่างของเอ็นจิ้น การใช้ไวยากรณ์ภาษา TeX จะมีประสิทธิภาพมากขึ้นหากคุณกำหนดมาโครและค่าพารามิเตอร์เพื่อความสะดวกของคุณ คุณสามารถใส่คำจำกัดความเหล่านั้นไว้ในไฟล์ TeX ซึ่งคุณจะรวมไว้ที่ตอนต้นของไฟล์ TeX อื่นๆ ทุกไฟล์ที่มีข้อมูลเอกสารจริง หรือคุณอาจหลีกเลี่ยงสิ่งนี้โดยการดัมพ์สถานะภายในของเอ็นจิ้นหลังจากโหลดคำจำกัดความแล้ว การดัมพ์แบบไบนารีดังกล่าวเรียกว่า ไฟล์รูปแบบ จากนั้นคุณจะต้องระบุชื่อรูปแบบ (ชื่อไฟล์รูปแบบ TeX) ก่อนจัดพิมพ์ไฟล์เอกสารใดๆ เอ็นจิ้น TeX จะโหลดไฟล์รูปแบบดังกล่าวเร็วกว่ารูปแบบในไวยากรณ์ TeX มาก เนื่องจากไม่จำเป็นต้องประมวลผลไฟล์รูปแบบ

ในปัจจุบัน รูปแบบที่ใช้กันทั่วไปคือ LaTeX ไม่น่าเป็นไปได้ที่คุณจะต้องมีรูปแบบของคุณเอง เนื่องจาก LaTeX ครอบคลุมวัตถุประสงค์ที่หลากหลายมาก แต่หากคุณต้องการ โซลูชัน Aspose.TeX API ช่วยให้คุณสร้างรูปแบบ TeX ของคุณเองได้ ที่นี่คุณจะพบข้อมูลที่อธิบายวิธีสร้างไฟล์รูปแบบที่กำหนดเอง และวิธีจัดเรียงพิมพ์เอกสารโดยใช้รูปแบบที่กำหนดเอง สำหรับสิ่งนี้เราต้องการ:

  • Aspose.TeX สำหรับ .NET API ซึ่งเป็น API การจัดการเอกสารและการแปลงที่มีคุณสมบัติครบถ้วน ทรงพลัง และใช้งานง่ายสำหรับแพลตฟอร์ม C#

  • เปิดตัวจัดการแพ็คเกจ NuGet ค้นหา Aspose.TeX และติดตั้ง คุณยังสามารถใช้คำสั่งต่อไปนี้จาก Package Manager Console

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 คุณต้องสร้างตัวเลือกกลไก TeX จากนั้นระบุไดเร็กทอรีการทำงานของระบบไฟล์สำหรับอินพุตและเอาต์พุต และสร้างรูปแบบโดยใช้เมธอด TeXJob.CreateFormat()

TeX TeX รูปแบบไฟล์คืออะไร

TeX เป็นระบบจัดหน้าและภาษาการเขียนโปรแกรมที่ช่วยสร้างเอกสารคุณภาพสูง โดยเฉพาะสูตรคณิตศาสตร์ ไฟล์ .tex เป็นข้อความธรรมดาที่ประมวลผลโดยเครื่องยนต์ TeX (เช่น pdfTeX, XeTeX, LuaTeX) เพื่อผลิต PDF หรือ DVI.