Crea formato TeX personalizzato e impagina PDF e XPS utilizzando C++

TeX è un sistema di composizione che è stato notato come uno dei più sofisticati sistemi tipografici digitali. TeX viene utilizzato per comporre documenti e generare output come PDF, XPS e diversi formati di immagine. Potrebbero esserci situazioni in cui è necessario progettare un gruppo di documenti in modo uniforme. Per questo, la creazione di un formato TeX personalizzato si rivelerà utile. A tal fine, questo articolo ti insegnerà come creare un formato TeX personalizzato e scriverlo in formato PDF e XPS usando C++.

API C++ per creare un formato TeX personalizzato e impaginarlo in PDF e XPS

Aspose.TeX for C++ è una libreria C++ per lavorare con i file TeX senza richiedere l’installazione di alcun software aggiuntivo. L’API consente di comporre file TeX, creare un formato TeX personalizzato e generare output in formati come XPS, PDF, PNG, JPEG, TIFF, BMP. Puoi installare l’API tramite NuGet o scaricarla direttamente dalla sezione Download.

PM> Install-Package Aspose.TeX.Cpp

Crea un formato TeX personalizzato usando C++

Di seguito sono riportati i passaggi per creare un formato TeX personalizzato.

Il codice di esempio seguente mostra come creare un formato TeX personalizzato usando C++.

// Crea opzioni di composizione sull'estensione del motore ObjectTeX.
System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::get_ObjectIniTeX());

// Specificare una directory di lavoro del file system per l'input.
options->set_InputWorkingDirectory(System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory"));

// Specificare una directory di lavoro del file system per l'output.
options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));

// Esegui la creazione del formato.
Aspose::TeX::TeX::CreateFormat(u"customtex", options);

Digita il formato TeX personalizzato in formato XPS

Di seguito sono riportati i passaggi per la composizione del formato TeX personalizzato in formato XPS.

Di seguito è riportato il codice di esempio per comporre un formato TeX personalizzato in formato XPS.

// Creare una directory di lavoro di input del file system.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
    // Crea un fornitore di formati.
    System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");

    // Cancellazione delle risorse nella dichiarazione "utilizzo".
    System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
    // -------------------------------------------

    try
    {
        // Crea opzioni di composizione per un formato personalizzato sull'estensione del motore ObjectTeX.
        System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
        options->set_JobName(u"typeset-with-custom-format");

        // Specificare la directory di lavoro di input.
        options->set_InputWorkingDirectory(wd);

        // Specificare una directory di lavoro del file system per l'output.
        options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));

        // Esegui la composizione.
        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());
    }
}

Digita il formato TeX personalizzato in formato PDF

Di seguito sono riportati i passaggi per la composizione del formato TeX personalizzato in formato PDF.

Il codice di esempio seguente mostra come comporre un formato TeX personalizzato in formato PDF.

// Creare una directory di lavoro di input del file system.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
    // Crea un fornitore di formati.
    System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");

    // Cancellazione delle risorse nella dichiarazione "utilizzo".
    System::Details::DisposeGuard<1> __dispose_guard_0({ formatProvider });
    // -------------------------------------------

    try
    {
        // Crea opzioni di composizione per un formato personalizzato sull'estensione del motore ObjectTeX.
        System::SharedPtr<TeXOptions> options = TeXOptions::ConsoleAppOptions(TeXConfig::ObjectTeX(formatProvider));
        options->set_JobName(u"typeset-with-custom-format");

        // Specificare la directory di lavoro di input.
        options->set_InputWorkingDirectory(wd);

        // Specificare una directory di lavoro del file system per l'output.
        options->set_OutputWorkingDirectory(System::MakeObject<OutputFileSystemDirectory>(u"OutputDirectory"));

        // Specificare PdfSaveOptions
        options->set_SaveOptions(System::MakeObject<PdfSaveOptions>());

        // Esegui la composizione.
        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());
    }
}

Ottieni una licenza gratuita

Puoi provare l’API senza limitazioni di valutazione richiedendo una licenza temporanea gratuita.

Conclusione

In questo articolo, hai imparato come creare un formato TeX personalizzato usando C++. Inoltre, hai imparato come comporre un formato TeX personalizzato in formati PDF e XPS usando Aspose.TeX per l’API C++. Puoi esplorare l’API in dettaglio visitando la documentazione ufficiale. In caso di domande, non esitare a contattarci sul nostro forum di supporto gratuito.

Guarda anche