با استفاده از C++ فرمت TeX سفارشی و Typeset را به PDF و XPS ایجاد کنید

TeX یک سیستم حروفچینی است که به عنوان یکی از پیچیده‌ترین سیستم‌های تایپوگرافی دیجیتال مورد توجه قرار گرفته است. TeX برای حروفچینی اسناد و تولید خروجی هایی مانند PDF، XPS و فرمت های مختلف تصویر استفاده می شود. ممکن است شرایطی وجود داشته باشد که شما نیاز به طراحی یکسری اسناد داشته باشید. برای آن، ایجاد یک قالب TeX سفارشی مفید خواهد بود. برای این منظور، این مقاله به شما یاد می دهد که چگونه یک فرمت TeX سفارشی ایجاد کنید و آن را با استفاده از C++ به فرمت های PDF و XPS تایپ کنید.

C++ API برای ایجاد فرمت TeX سفارشی و تایپ کردن آن به PDF و XPS

Aspose.TeX for C++ یک کتابخانه C++ برای کار با فایل های TeX بدون نیاز به نصب نرم افزار اضافی است. API به شما اجازه می‌دهد تا فایل‌های TeX را تایپ کنید، فرمت TeX سفارشی ایجاد کنید و خروجی را در فرمت‌هایی مانند XPS، PDF، PNG، JPEG، TIFF، BMP تولید کنید. می‌توانید API را از طریق NuGet نصب کنید یا آن را مستقیماً از بخش Downloads دانلود کنید.

PM> Install-Package Aspose.TeX.Cpp

با استفاده از C++ یک قالب TeX سفارشی ایجاد کنید

مراحل زیر برای ایجاد یک قالب TeX سفارشی است.

کد نمونه زیر نحوه ایجاد یک قالب 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 آمده است.

در زیر کد نمونه برای تایپ کردن فرمت 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 آمده است.

کد نمونه زیر نحوه تایپ کردن فرمت 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"));

        // PdfSaveOptions را مشخص کنید
        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());
    }
}

مجوز رایگان دریافت کنید

با درخواست [مجوز موقت رایگان30 می‌توانید API را بدون محدودیت ارزیابی امتحان کنید.

نتیجه

در این مقاله، نحوه ایجاد یک فرمت TeX سفارشی با استفاده از C++ را یاد گرفتید. علاوه بر این، یاد گرفته‌اید که چگونه یک قالب TeX سفارشی را با استفاده از Aspose.TeX برای C++ API به فرمت‌های PDF و XPS تایپ کنید. می‌توانید با مراجعه به مستندات رسمی API را با جزئیات بررسی کنید. در صورت وجود هرگونه سوال، لطفاً در [تالار گفتمان پشتیبانی رایگان32 ما با ما تماس بگیرید.

همچنین ببینید