TeX은 가장 정교한 디지털 인쇄 시스템 중 하나로 알려진 조판 시스템입니다. TeX는 문서를 조판하고 PDF, XPS 및 다양한 이미지 형식과 같은 출력을 생성하는 데 사용됩니다. 많은 문서를 균일하게 디자인해야 하는 상황이 있을 수 있습니다. 이를 위해 사용자 정의 TeX 형식을 만드는 것이 도움이 될 것입니다. 이를 위해 이 기사에서는 사용자 지정 TeX 형식을 만들고 C++를 사용하여 PDF 및 XPS 형식으로 조판하는 방법을 설명합니다.
- 사용자 정의 TeX 형식을 만들고 PDF 및 XPS로 조판하기 위한 C++ API
- C++를 사용하여 사용자 정의 TeX 형식 만들기
- 사용자 정의 TeX 형식을 XPS 형식으로 조판
- 사용자 정의 TeX 형식을 PDF 형식으로 조판
사용자 정의 TeX 형식을 만들고 PDF 및 XPS로 조판하기 위한 C++ API
Aspose.TeX for C++는 추가 소프트웨어 설치 없이 TeX 파일 작업을 위한 C++ 라이브러리입니다. API를 사용하면 TeX 파일을 조판하고 사용자 정의 TeX 형식을 만들고 XPS, PDF, PNG, JPEG, TIFF, BMP와 같은 형식으로 출력을 생성할 수 있습니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.
PM> Install-Package Aspose.TeX.Cpp
C++를 사용하여 사용자 정의 TeX 형식 만들기
다음은 사용자 정의 TeX 형식을 만드는 단계입니다.
- TeXConfig::getObjectIniTeX() 속성 값을 사용하여 TeXOptions 클래스의 인스턴스를 만듭니다.
- 입력 및 출력 작업 디렉토리를 지정하십시오.
- TeX::CreateFormat(System::String path, System::SharedPtr 옵션) 메서드.
다음 샘플 코드는 C++를 사용하여 사용자 지정 TeX 형식을 만드는 방법을 보여줍니다.
// 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 형식으로 조판하는 단계입니다.
- 입력 작업 디렉터리를 나타내는 IWorkingDirectory 클래스의 인스턴스를 만듭니다.
- FormatProvider 클래스를 사용하여 TeX 파일을 로드합니다.
- 이전에 생성한 FormatProvider 객체를 사용하여 TeXOptions 클래스의 인스턴스를 생성합니다.
- JobName, InputWorkingDirectory 및 OutputWorkingDirectory를 설정합니다.
- Typeset(System::SharedPtrSystem::IO::Stream 스트림, 시스템::SharedPtrPresentation::Device 장치, 시스템::SharedPtr options) 메서드를 사용하고 XpsDevice 개체를 인수로 전달하여 XPS 출력을 생성합니다.
다음은 사용자 지정 TeX 형식을 XPS 형식으로 조판하는 샘플 코드입니다.
// 파일 시스템 입력 작업 디렉터리를 만듭니다.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// 형식 공급자를 만듭니다.
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// 'using' 문에서 리소스 지우기
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 형식으로 조판하는 단계입니다.
- 입력 작업 디렉터리를 나타내는 IWorkingDirectory 클래스의 인스턴스를 만듭니다.
- FormatProvider 클래스를 사용하여 TeX 파일을 로드합니다.
- 이전에 생성한 FormatProvider 객체를 사용하여 TeXOptions 클래스의 인스턴스를 생성합니다.
- JobName, InputWorkingDirectory 및 OutputWorkingDirectory를 설정합니다.
- PdfSaveOptions 클래스의 인스턴스를 만들고 TeXOptions->setSaveOptions(System::SharedPtr)에 전달합니다.Aspose::TeX::Presentation::SaveOptions 값) 메서드입니다.
- Typeset(System::SharedPtrSystem::IO::Stream 스트림, 시스템::SharedPtrPresentation::Device 장치, 시스템::SharedPtr options) 메서드를 사용하고 PdfDevice 개체를 인수로 전달하여 PDF 출력을 생성합니다.
다음 샘플 코드는 사용자 정의 TeX 형식을 PDF 형식으로 조판하는 방법을 보여줍니다.
// 파일 시스템 입력 작업 디렉터리를 만듭니다.
System::SharedPtr<IWorkingDirectory> wd = System::MakeObject<InputFileSystemDirectory>(u"SourceDirectory");
{
// 형식 공급자를 만듭니다.
System::SharedPtr<FormatProvider> formatProvider = System::MakeObject<FormatProvider>(wd, u"customtex");
// 'using' 문에서 리소스 지우기
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());
}
}
무료 라이선스 받기
임시 무료 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.
결론
이 기사에서는 C++를 사용하여 사용자 정의 TeX 형식을 만드는 방법을 배웠습니다. 또한 Aspose.TeX for C++ API를 사용하여 사용자 정의 TeX 형식을 PDF 및 XPS 형식으로 조판하는 방법을 배웠습니다. API에 대한 자세한 내용은 공식 문서에서 확인할 수 있습니다. 질문이 있는 경우 무료 지원 포럼을 통해 언제든지 문의하십시오.