
TeX dosyaları, metin, semboller ve aritmetik ifadeler içeren farklı belgeleri ve kitapları dizmek için kullanılır. Ayrıca, bu dosyalar PDF, XPS gibi çıktılar ve çeşitli görüntü formatları oluşturabilir. Bu makalede, TeX dosyalarını C++ kullanarak XPS ve PDF formatına nasıl dönüştüreceğinizi öğreneceksiniz.
- TeX’i PDF ve XPS Formatına Dönüştürmek için C++ API
- C++ kullanarak TeX’i XPS Biçimine Dönüştürün
- C++ kullanarak TeX’i PDF Formatına Dönüştürme
- C++ kullanarak TeX ZIP dizinini PDF ZIP Dizinine dönüştürün
TeX’i PDF ve XPS Formatına Dönüştürmek için C++ API
Aspose.TeX for C++, herhangi bir ek yazılım yüklenmesini gerektirmeden TeX dosyalarıyla çalışmaya yönelik bir C++ kitaplığıdır. API, TeX dosyalarını dizmenize ve XPS, PDF, PNG, JPEG, TIFF, gibi biçimlerde çıktılar oluşturmanıza olanak tanır. BMP. API’yi NuGet aracılığıyla yükleyebilir veya doğrudan İndirilenler bölümünden indirebilirsiniz.
PM> Install-Package Aspose.TeX.Cpp
C++ kullanarak TeX’i XPS Biçimine Dönüştürün
TeX dosyalarını birkaç satır kodla XPS formatına dönüştürebilirsiniz. Bunu başarmak için lütfen aşağıda verilen adımları izleyin.
- [TeXConfig::ObjectTeX(System::SharedPtr) kullanarak TeXOptions sınıfının bir örneğini oluşturunAspose::TeX::ResourceProviders::FormatProvider formatProvider = nullptr)]14 üye işlevi.
- Girdi ve çıktı çalışma dizinlerini belirtin.
- Çıkış terminali olarak konsol veya bellek akışını belirtin.
- Çıkış XPS dosyasını TeX::Typeset(System::String path, System::SharedPtr) kullanarak kaydedin.Presentation::Device cihaz, Sistem::SharedPtr options) XpsDevice sınıfının bir örneği ile yöntem.
Aşağıdaki örnek kod, bir TeX dosyasının C++ kullanarak XPS biçimine nasıl dönüştürüleceğini gösterir.
// ObjectTeX motor uzantısında varsayılan ObjectTeX formatı için dizgi seçenekleri oluşturun.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX());
// Giriş için bir dosya sistemi çalışma dizini belirtin.
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory"));
// Çıktı için bir dosya sistemi çalışma dizini belirtin.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// Çıkış terminali olarak konsolu belirtin.
options->set_TerminalOut(System::MakeObject<Aspose::TeX::IO::OutputConsoleTerminal>());
// Varsayılan. Belirtmeye gerek yok.
// Terminal çıkışının konsola yazılmasını istemiyorsanız, çıkış terminali olarak bellek akışını belirtin.
//options.TerminalOut = yeni OutputMemoryTerminal();
// Dizgiyi çalıştırın.
Aspose::TeX::TeX::Typeset(u"hello-world", System::MakeObject<XpsDevice>(), options);
// Daha fazla çıktının görünmesi için yazın.
options->get_TerminalOut()->get_Writer()->WriteLine();
C++ kullanarak TeX’i PDF Formatına Dönüştürme
TeX dosyalarını PDF formatına dönüştürmek için gereken adımlar aşağıdadır.
- [TeXConfig::ObjectTeX(System::SharedPtr) kullanarak TeXOptions sınıfının bir örneğini oluşturunAspose::TeX::ResourceProviders::FormatProvider formatProvider = nullptr)]18 üye işlevi.
- Girdi ve çıktı çalışma dizinlerini belirtin.
- Çıkış terminali olarak konsol veya bellek akışını belirtin.
- PdfSaveOptions sınıfının bir örneğini TeXOptions->setSaveOptions(System::SharedPtr) öğesine iletinAspose::TeX::Presentation::SaveOptions değer) yöntemi.
- Çıkış PDF dosyasını TeX::Typeset(System::String path, System::SharedPtr) kullanarak kaydedin.Presentation::Device cihaz, Sistem::SharedPtr options) PdfDevice sınıfının bir örneği ile yöntem.
Aşağıdaki örnek kod, C++ kullanılarak bir TeX dosyasının PDF biçimine nasıl dönüştürüleceğini gösterir.
// ObjectTeX motor uzantısında varsayılan ObjectTeX formatı için dizgi seçenekleri oluşturun.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX());
// Giriş için bir dosya sistemi çalışma dizini belirtin.
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory"));
// Çıktı için bir dosya sistemi çalışma dizini belirtin.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));
// Çıkış terminali olarak konsolu belirtin.
options->set_TerminalOut(System::MakeObject<Aspose::TeX::IO::OutputConsoleTerminal>());
// Varsayılan. Belirtmeye gerek yok.
// Terminal çıkışının konsola yazılmasını istemiyorsanız, çıkış terminali olarak bellek akışını belirtin.
//options.TerminalOut = yeni OutputMemoryTerminal();
// PdfSaveOptions'ı ayarlayın
options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());
// Dizgiyi çalıştırın.
Aspose::TeX::TeX::Typeset(u"hello-world", System::MakeObject<PdfDevice>(), options);
// Daha fazla çıktının görünmesi için yazın.
options->get_TerminalOut()->get_Writer()->WriteLine();
C++ kullanarak TeX ZIP dizinini PDF ZIP Dizinine dönüştürün
Birden fazla TeX dosyasını tek seferde PDF formatına dönüştürmek için TeX dosyalarını bir ZIP arşivine ekleyebilir ve sıkıştırılmış PDF dosyalarına dönüştürebilirsiniz. Bunu başarmak için adımlar aşağıdadır.
- Giriş ve çıkış ZIP arşivlerini akışlara yükleyin.
- [TeXConfig::ObjectTeX(System::SharedPtr) kullanarak TeXOptions sınıfının bir örneğini oluşturunAspose::TeX::ResourceProviders::FormatProvider formatProvider = nullptr)]24 üye işlevi.
- Giriş ve çıkış çalışma dizinlerini ayarlayın.
- Çıkış terminali olarak konsol veya bellek akışını belirtin.
- PdfSaveOptions sınıfının bir örneğini TeXOptions->setSaveOptions(System::SharedPtr) öğesine iletinAspose::TeX::Presentation::SaveOptions değer) yöntemi.
- Sıkıştırılmış çıktı PDF dosyasını TeX::Typeset(System::String path, System::SharedPtr) kullanarak kaydedin.Presentation::Device cihaz, Sistem::SharedPtr options) PdfDevice sınıfının bir örneği ile yöntem.
Aşağıdaki örnek kod, C++ kullanarak TeX ZIP arşivinin PDF ZIP arşivine nasıl dönüştürüleceğini gösterir.
// Kaynak zip dosyasını bir akışta açın
System::SharedPtr<System::IO::Stream> inZipStream = System::IO::File::Open(System::IO::Path::Combine(u"SourceDirectory", u"zip-in.zip"), System::IO::FileMode::Open);
// Kaynakları 'kullanma' ifadesi altında temizleme
System::Details::DisposeGuard<1> __dispose_guard_1({ inZipStream });
// ------------------------------------------
try {
// Çıkış zip dosyasını bir akışta açın
System::SharedPtr<System::IO::Stream> outZipStream = System::IO::File::Open(System::IO::Path::Combine(u"OutputDirectory", u"zip-pdf-out.zip"), System::IO::FileMode::Create);
// Kaynakları 'kullanma' ifadesi altında temizleme
System::Details::DisposeGuard<1> __dispose_guard_0({ outZipStream });
// ------------------------------------------
try
{
// ObjectTeX motor uzantısında varsayılan ObjectTeX formatı için dizgi seçenekleri oluşturun.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX());
// Giriş için bir ZIP arşivi çalışma dizini belirtin.
options->set_InputWorkingDirectory(System::MakeObject<InputZipDirectory>(inZipStream, u"in"));
// Çıktı için bir ZIP arşiv çalışma dizini belirtin.
options->set_OutputWorkingDirectory(System::MakeObject<OutputZipDirectory>(outZipStream));
// Çıkış terminali olarak konsolu belirtin.
options->set_TerminalOut(System::MakeObject<OutputConsoleTerminal>());
// Varsayılan. Belirtmek gerekli değil.
// Kaydetme seçeneklerini oluşturun ve belirtin.
options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());
// Dizgiyi çalıştırın.
Aspose::TeX::TeX::Typeset(u"hello-world", System::MakeObject<PdfDevice>(), options);
// Sonuç olarak çıktının görünmesi için yazın.
options->get_TerminalOut()->get_Writer()->WriteLine();
// Çıktı ZIP arşivini sonlandırın.
(System::DynamicCast<Aspose::TeX::IO::OutputZipDirectory>(options->get_OutputWorkingDirectory()))->Finish();
}
catch (...)
{
__dispose_guard_0.SetCurrentException(std::current_exception());
}
}
catch (...)
{
__dispose_guard_1.SetCurrentException(std::current_exception());
}
Ücretsiz Lisans Alın
Ücretsiz bir geçici lisans talep ederek API’yi değerlendirme sınırlamaları olmaksızın deneyebilirsiniz.
Çözüm
Bu makalede, C++ kullanarak TeX dosyalarını XPS ve PDF formatına nasıl dönüştüreceğinizi öğrendiniz. Ayrıca, bir ZIP arşivindeki TeX dosyalarını sıkıştırılmış PDF dosyalarına nasıl dönüştüreceğinizi öğrendiniz. Aspose.TeX for C++, TeX dosyalarıyla çalışmak için birçok ek özellik sağlar. Resmi belgeleri ziyaret ederek API’yi ayrıntılı olarak keşfedebilirsiniz. Herhangi bir sorunuz olması durumunda lütfen ücretsiz destek forumumuzda bize ulaşmaktan çekinmeyin.