TeX to system składu, który został uznany za jeden z najbardziej wyrafinowanych cyfrowych systemów typograficznych. TeX służy do składania dokumentów i generowania wyników, takich jak PDF, XPS i różnych formatów graficznych. Mogą zaistnieć sytuacje, w których konieczne będzie jednolite zaprojektowanie wielu dokumentów. W tym celu pomocne okaże się utworzenie niestandardowego formatu TeX. W tym celu w tym artykule dowiesz się, jak utworzyć niestandardowy format TeX i złożyć go do formatów PDF i XPS za pomocą C++.
- C++ API do tworzenia niestandardowego formatu TeX i składania go do formatu PDF i XPS
- Utwórz niestandardowy format TeX za pomocą C++
- Zmień niestandardowy format TeX na format XPS
- Złóż niestandardowy format TeX do formatu PDF
C++ API do tworzenia niestandardowego formatu TeX i składania go do formatu PDF i XPS
Aspose.TeX for C++ to biblioteka C++ do pracy z plikami TeX bez konieczności instalowania dodatkowego oprogramowania. Interfejs API umożliwia składanie plików TeX, tworzenie niestandardowego formatu TeX i generowanie danych wyjściowych w formatach takich jak XPS, PDF, PNG, JPEG, TIFF, BMP. Możesz zainstalować API przez NuGet lub pobrać bezpośrednio z sekcji Downloads.
PM> Install-Package Aspose.TeX.Cpp
Utwórz niestandardowy format TeX za pomocą C++
Poniżej przedstawiono kroki tworzenia niestandardowego formatu TeX.
- Utwórz instancję klasy TeXOptions, używając wartości właściwości TeXConfig::getObjectIniTeX().
- Określ wejściowe i wyjściowe katalogi robocze.
- Utwórz format używając TeX::CreateFormat(System::String path, System::SharedPtr opcje) metoda.
Poniższy przykładowy kod pokazuje, jak utworzyć niestandardowy format TeX przy użyciu C++.
// Utwórz opcje składu w rozszerzeniu silnika ObjectTeX.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::get_ObjectIniTeX());
// Określ katalog roboczy systemu plików dla danych wejściowych.
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory"));
// Określ katalog roboczy systemu plików dla danych wyjściowych.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// Uruchom tworzenie formatu.
Aspose::TeX::TeX::CreateFormat(u"customtex", options);
Zmień niestandardowy format TeX na format XPS
Poniżej przedstawiono kroki składania niestandardowego formatu TeX do formatu XPS.
- Utwórz instancję klasy IWorkingDirectory reprezentującą wejściowy katalog roboczy.
- Załaduj plik TeX przy użyciu klasy FormatProvider.
- Utwórz instancję klasy TeXOptions przy użyciu wcześniej utworzonego obiektu FormatProvider.
- Ustaw JobName, InputWorkingDirectory i OutputWorkingDirectory.
- Użyj Typeset(System::SharedPtrSystem::IO::Stream strumień, System::SharedPtrPresentation::Device urządzenie, System::SharedPtr options) i przekaż obiekt XpsDevice jako argument, aby utworzyć dane wyjściowe XPS.
Poniżej znajduje się przykładowy kod składowania niestandardowego formatu TeX do formatu XPS.
// Utwórz wejściowy katalog roboczy systemu plików.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// Utwórz dostawcę formatu.
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// Czyszczenie zasobów w instrukcji „używanie”.
System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
// ---------------------------------------------------------
try
{
// Utwórz opcje składu dla niestandardowego formatu w rozszerzeniu silnika ObjectTeX.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
options->set_JobName(u"typeset-with-custom-format");
// Określ wejściowy katalog roboczy.
options->set_InputWorkingDirectory(wd);
// Określ katalog roboczy systemu plików dla danych wyjściowych.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// Uruchom skład.
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());
}
}
Złóż niestandardowy format TeX do formatu PDF
Poniżej przedstawiono kroki składania niestandardowego formatu TeX do formatu PDF.
- Utwórz instancję klasy IWorkingDirectory reprezentującą wejściowy katalog roboczy.
- Załaduj plik TeX, używając klasy FormatProvider.
- Utwórz instancję klasy TeXOptions przy użyciu wcześniej utworzonego obiektu FormatProvider.
- Ustaw JobName, InputWorkingDirectory i OutputWorkingDirectory.
- Utwórz instancję klasy PdfSaveOptions i przekaż ją do TeXOptions->setSaveOptions(System::SharedPtrAspose::TeX::Presentation::SaveOptions wartość) metoda.
- Użyj Typeset(System::SharedPtrSystem::IO::Stream strumień, System::SharedPtrPresentation::Device urządzenie, System::SharedPtr options) i przekaż obiekt PdfDevice jako argument, aby utworzyć plik wyjściowy PDF.
Poniższy przykładowy kod pokazuje, jak złożyć niestandardowy format TeX do formatu PDF.
// Utwórz wejściowy katalog roboczy systemu plików.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// Utwórz dostawcę formatu.
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// Czyszczenie zasobów w instrukcji „używanie”.
System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
// ---------------------------------------------------------
try
{
// Utwórz opcje składu dla niestandardowego formatu w rozszerzeniu silnika ObjectTeX.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
options->set_JobName(u"typeset-with-custom-format");
// Określ wejściowy katalog roboczy.
options->set_InputWorkingDirectory(wd);
// Określ katalog roboczy systemu plików dla danych wyjściowych.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// Określ opcję PdfSaveOptions
options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());
// Uruchom skład.
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());
}
}
Uzyskaj bezpłatną licencję
Możesz wypróbować interfejs API bez ograniczeń ewaluacyjnych, prosząc o bezpłatną licencję tymczasową.
Wniosek
W tym artykule nauczyłeś się, jak utworzyć niestandardowy format TeX za pomocą C++. Ponadto nauczyłeś się, jak składać niestandardowy format TeX do formatów PDF i XPS za pomocą Aspose.TeX for C++ API. Możesz szczegółowo zapoznać się z interfejsem API, odwiedzając oficjalną dokumentację. W przypadku jakichkolwiek pytań prosimy o kontakt na naszym bezpłatnym forum pomocy technicznej.