Çıktıyı ZIP’e yaz

TeX dosya dönüştürmesinin sonucunu C++ aracılığıyla ZIP olarak kaydedin

 

TeX bir veri biçimlendirme dilidir ve yayın seti sistemi olarak da bilinen bilgisayar dizgi sisteminin çekirdeğidir. Genellikle bir dosya formatı olarak anılsa da, aslında matematiksel, teknik ve diğer karmaşık belgeleri oluşturmak için kullanılan bir programlama dili ve yorumlama motorudur. Ancak, bir dosya oluşturulduktan sonra, sonucu herhangi bir cihaz ve platformda kullanabilmek için onu daha popüler bir formata dönüştürmek gerekebilir.

Aspose.TeX API Solution, TeX dosyalarını dönüştürmek ve sonucu bir ZIP arşivi olarak kaydetmek için bir özellik sunar. Burada sağlanan kod parçacığı, bir TeX dosyasının PDF’ye nasıl dönüştürüleceğini ve çıktının bir zip dosyası olarak nasıl kaydedileceğini gösterir. API dönüştürücü, TeX dosyalarını C++ dilinde dönüştürebilir ve platformlar arası bir uygulama oluşturmak için kullanılabilir veya C++ projenize entegre edilebilir.

Örnekleri çalıştırmak için, C++ platformu için zengin özelliklere sahip ve kullanımı kolay bir belge işleme ve dönüştürme aracı olan Aspose.TeX for C++ API’ye ihtiyacınız olacak. Aspose.TeX API’sini NuGet paket yöneticisinde arayarak veya Paket Yöneticisi Konsolunda Aspose.TeX Kur komutunu kullanarak yükleyebilirsiniz.

Package Manager Console Command


    PM> Install-Package Aspose.TeX

Buradaki kod, bir TeX dosyasını dönüştürmek ve onu bir ZIP arşivinde PDF olarak kaydetmektir. Bu tür bir dönüşümü işlemek için sonraki adımları atın:

  1. TeXOptions Sınıfının bir örneğini oluşturun. OutputWorkingDirectory özelliğini kullanarak çıktı için bir ZIP arşivi çalışma dizini belirtmek için bunu kullanın.
  2. OutputConsoleTerminal Sınıfını kullanarak konsolu çıkış terminali olarak belirtin.
  3. PdfSaveOptions Sınıfını kullanarak çıktıyı kaydetme seçeneklerini tanımlayın.
  4. PdfDevice için TeXJob() Yöntemini kullanarak TeX’ten PDF’e dönüştürmeyi çalıştırın.
  5. Çıktıyı hassaslaştırın.
  6. OutputZipDirectory Sınıfını kullanarak çıktı ZIP arşivini sonlandırın. Kod, işlem sırasında oluşabilecek istisnaları işlemek için bir try-catch bloğu kullanır.

Çıktı için ZIP dizinlerini kullanmak için C++ Kodu

    using Aspose::TeX::IO;
    using Aspose::TeX::Presentation::Pdf;
    using System::IO;
    // Open a stream on a ZIP archive that will serve as the input working directory.
    {
        System::SharedPtr<System::IO::Stream> inZipStream = System::IO::File::Open(System::IO::Path::Combine(RunExamples::InputDirectory, u"zip-in.zip"), System::IO::FileMode::Open);
        // Clearing resources under 'using' statement
        System::Details::DisposeGuard<1> __dispose_guard_1({ inZipStream});
        // ------------------------------------------

        try{
            System::SharedPtr<System::IO::Stream> outZipStream = System::IO::File::Open(System::IO::Path::Combine(RunExamples::OutputDirectory, u"zip-pdf-out.zip"), System::IO::FileMode::Create);
            // Clearing resources under 'using' statement
            System::Details::DisposeGuard<1> __dispose_guard_0({ outZipStream});
            // ------------------------------------------

            try
            {
                // Create typesetting options for default ObjectTeX format on ObjectTeX engine extension.
                System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX());
                // Specify a ZIP archive working directory for the input.
                options->set_InputWorkingDirectory(System::MakeObject<InputZipDirectory>(inZipStream, u"in"));
                // Specify a ZIP archive working directory for the output.
                options->set_OutputWorkingDirectory(System::MakeObject<OutputZipDirectory>(outZipStream));
                // Specify the console as an output terminal.
                options->set_TerminalOut(System::MakeObject<OutputConsoleTerminal>());
                // Default. Not necessary to specify.

                // Create and specify saving options.
                options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());
                // Run typesetting.
                Aspose::TeX::TeX::Typeset(u"hello-world", System::MakeObject<PdfDevice>(), options);

                // For the consequent output to look right. 
                options->get_TerminalOut()->get_Writer()->WriteLine();

                // Finalize the output ZIP archive.
                (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());
        }
    }



SSS

1. TeX çıktısı nasıl görüntülenir?

TeX dosyasının içeriğini çevrimiçi olarak açmak ve görüntülemek için platformlar arası TeX Viewer seçeneğini kullanın. Ayrıca dosyayı resim olarak kaydetmenize de olanak tanır.

2. TeX çıktısını ZIP arşivine yazabilir miyim?

Evet, bu API çözümü bu tür özellikleri desteklemektedir. Çalışma dizini bir ZIP arşivi olduğunda yazılacak dosya akışını alma yöntemini uygulayan OutputZipDirectoryClass‘a ihtiyacınız olacak.

3. TeX çıktısını ZIP arşivine nasıl yazılır?

TeXOptions sınıfının örneğini oluşturun. Daha sonra çıkış için bir ZIP arşivi çalışma dizini ve çıkış terminali olarak konsol belirtin. Kaydetme seçeneklerini belirtin ve dönüştürmeyi çalıştırın. Son olarak, OutputZipDirectory sınıfını kullanarak çıktıyı ZIP’e yazın.

TeX TeX Dosya Biçimi nedir

TeX aslında bir format değildir. Aynı zamanda bir programlama dili ve bu dili anlayan bir tercüman motorudur. Bir TeX dosyası, LaTeX'te oluşturulan bir belgedir. Bu belge grafikler, tablolar, semboller, listeler, formüller ve denklemler içerebilir.