TeX คือระบบการเรียงพิมพ์ที่ได้รับการกล่าวขานว่าเป็นระบบการพิมพ์ดิจิทัลที่ซับซ้อนที่สุดระบบหนึ่ง TeX ใช้สำหรับเรียงพิมพ์เอกสารและสร้างเอาต์พุต เช่น PDF, XPS และรูปแบบภาพต่างๆ อาจมีบางสถานการณ์ที่คุณต้องออกแบบเอกสารหลายชุดให้เหมือนกัน ด้วยเหตุนี้ การสร้างรูปแบบ TeX แบบกำหนดเองจะเป็นประโยชน์ ด้วยเหตุนี้ บทความนี้จะสอนวิธีสร้างรูปแบบ TeX แบบกำหนดเองและเรียงเป็นรูปแบบ PDF และ XPS โดยใช้ C++
- C++ API สำหรับสร้างรูปแบบ TeX แบบกำหนดเองและเรียงพิมพ์เป็น PDF และ XPS
- สร้างรูปแบบ TeX แบบกำหนดเองโดยใช้ C++
- เรียงพิมพ์รูปแบบ TeX ที่กำหนดเองเป็นรูปแบบ XPS
- เรียงพิมพ์รูปแบบ TeX ที่กำหนดเองเป็นรูปแบบ PDF
C++ API สำหรับสร้างรูปแบบ TeX แบบกำหนดเองและเรียงพิมพ์เป็น PDF และ XPS
Aspose.TeX for C++ เป็นไลบรารี C++ สำหรับทำงานกับไฟล์ TeX โดยไม่ต้องติดตั้งซอฟต์แวร์เพิ่มเติม API ช่วยให้คุณสามารถเรียงไฟล์ TeX สร้างรูปแบบ TeX แบบกำหนดเอง และสร้างเอาต์พุตในรูปแบบต่างๆ เช่น XPS, PDF, PNG, JPEG, TIFF, BMP คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.TeX.Cpp
สร้างรูปแบบ TeX แบบกำหนดเองโดยใช้ C++
ต่อไปนี้เป็นขั้นตอนในการสร้างรูปแบบ TeX แบบกำหนดเอง
- สร้างอินสแตนซ์ของคลาส TeXOptions โดยใช้ค่าคุณสมบัติ TeXConfig::getObjectIniTeX()
- ระบุไดเร็กทอรีการทำงานของอินพุตและเอาต์พุต
- สร้างรูปแบบโดยใช้ TeX::CreateFormat(System::String path, System::SharedPtr ตัวเลือก) วิธีการ
โค้ดตัวอย่างต่อไปนี้สาธิตวิธีสร้างรูปแบบ TeX แบบกำหนดเองโดยใช้ C++
// สร้างตัวเลือกการเรียงพิมพ์ในส่วนขยายเอ็นจิ้น ObjectTeX
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::get_ObjectIniTeX());
// ระบุไดเร็กทอรีการทำงานของระบบไฟล์สำหรับอินพุต
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory"));
// ระบุไดเร็กทอรีการทำงานของระบบไฟล์สำหรับเอาต์พุต
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// เรียกใช้การสร้างรูปแบบ
Aspose::TeX::TeX::CreateFormat(u"customtex", options);
เรียงพิมพ์รูปแบบ TeX ที่กำหนดเองเป็นรูปแบบ XPS
ต่อไปนี้เป็นขั้นตอนสำหรับการเรียงรูปแบบ TeX แบบกำหนดเองเป็นรูปแบบ XPS
- สร้างอินสแตนซ์ของคลาส IWorkingDirectory เพื่อแสดงไดเร็กทอรีการทำงานอินพุต
- โหลดไฟล์ TeX โดยใช้คลาส FormatProvider
- สร้างอินสแตนซ์ของคลาส TeXOptions โดยใช้อ็อบเจ็กต์ FormatProvider ที่สร้างไว้ก่อนหน้านี้
- ตั้งค่า JobName, InputWorkingDirectory และ OutputWorkingDirectory
- ใช้ [Typeset(System::SharedPtrSystem::IO::Stream สตรีม, ระบบ::SharedPtrPresentation::Device อุปกรณ์, ระบบ::SharedPtr ตัวเลือก) 17 วิธีการและส่งวัตถุ XpsDevice เป็นอาร์กิวเมนต์เพื่อสร้างเอาต์พุต XPS
ต่อไปนี้คือโค้ดตัวอย่างสำหรับเรียงรูปแบบ TeX แบบกำหนดเองเป็นรูปแบบ XPS
// สร้างไดเร็กทอรีการทำงานของอินพุตระบบไฟล์
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// สร้างผู้ให้บริการรูปแบบ
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// การล้างทรัพยากรภายใต้คำสั่ง 'ใช้'
System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
// ------------------------------------------
try
{
// สร้างตัวเลือกการเรียงพิมพ์สำหรับรูปแบบที่กำหนดเองในส่วนขยายเอ็นจิ้น ObjectTeX
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
options->set_JobName(u"typeset-with-custom-format");
// ระบุไดเร็กทอรีการทำงานอินพุต
options->set_InputWorkingDirectory(wd);
// ระบุไดเร็กทอรีการทำงานของระบบไฟล์สำหรับเอาต์พุต
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// เรียกใช้การเรียงพิมพ์
Aspose::TeX::TeX::Typeset(System::MakeObject<System::IO::MemoryStream>(System::Text::Encoding::get_ASCII()->GetBytes(u"Congratulations! You have successfully typeset this text with your own TeX format!\\end")), System::MakeObject<XpsDevice>(), options);
}
catch (...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}
เรียงพิมพ์รูปแบบ TeX ที่กำหนดเองเป็นรูปแบบ PDF
ต่อไปนี้เป็นขั้นตอนสำหรับการเรียงรูปแบบ TeX แบบกำหนดเองเป็นรูปแบบ PDF
- สร้างอินสแตนซ์ของคลาส IWorkingDirectory เพื่อแสดงไดเร็กทอรีการทำงานอินพุต
- โหลดไฟล์ TeX โดยใช้คลาส FormatProvider
- สร้างอินสแตนซ์ของคลาส TeXOptions โดยใช้อ็อบเจ็กต์ FormatProvider ที่สร้างไว้ก่อนหน้านี้
- ตั้งค่า JobName, InputWorkingDirectory และ OutputWorkingDirectory
- สร้างอินสแตนซ์ของคลาส PdfSaveOptions และส่งต่อไปยัง TeXOptions->setSaveOptions(System::SharedPtrAspose::TeX::Presentation::SaveOptions ค่า) วิธีการ
- ใช้ [Typeset(System::SharedPtrSystem::IO::Stream สตรีม, ระบบ::SharedPtrPresentation::Device อุปกรณ์, ระบบ::SharedPtr ตัวเลือก) 28 วิธีการและส่ง PdfDevice วัตถุเป็นอาร์กิวเมนต์เพื่อสร้างเอาต์พุต PDF
โค้ดตัวอย่างต่อไปนี้แสดงวิธีเรียงรูปแบบ TeX แบบกำหนดเองเป็นรูปแบบ PDF
// สร้างไดเร็กทอรีการทำงานของอินพุตระบบไฟล์
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// สร้างผู้ให้บริการรูปแบบ
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// การล้างทรัพยากรภายใต้คำสั่ง 'ใช้'
System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
// ------------------------------------------
try
{
// สร้างตัวเลือกการเรียงพิมพ์สำหรับรูปแบบที่กำหนดเองในส่วนขยายเอ็นจิ้น ObjectTeX
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
options->set_JobName(u"typeset-with-custom-format");
// ระบุไดเร็กทอรีการทำงานอินพุต
options->set_InputWorkingDirectory(wd);
// ระบุไดเร็กทอรีการทำงานของระบบไฟล์สำหรับเอาต์พุต
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// ระบุตัวเลือก PdfSave
options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());
// เรียกใช้การเรียงพิมพ์
Aspose::TeX::TeX::Typeset(System::MakeObject<System::IO::MemoryStream>(System::Text::Encoding::get_ASCII()->GetBytes(u"Congratulations! You have successfully typeset this text with your own TeX format!\\end")), System::MakeObject<PdfDevice>(), options);
}
catch (...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}
รับใบอนุญาตฟรี
คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีสร้างรูปแบบ TeX แบบกำหนดเองโดยใช้ C++ นอกจากนี้ คุณได้เรียนรู้วิธีเรียงรูปแบบ TeX แบบกำหนดเองเป็นรูปแบบ PDF และ XPS โดยใช้ Aspose.TeX for C++ API คุณสามารถสำรวจ API โดยละเอียดได้โดยไปที่ เอกสารอย่างเป็นทางการ ในกรณีที่มีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี