Java의 LaTeX에서 PDF 만들기

LaTeX는 기술 및 과학 문서 작성에 널리 사용됩니다. LaTeX 파일(TEX 또는 LTX)은 텍스트, 기호, 수학 표현식 및 그래픽을 포함하여 문서 형식을 지정하는 명령으로 채워진 소스 문서입니다. LaTeX 소스에서 프로그래밍 방식으로 PDF 문서를 쉽게 생성할 수 있습니다. PDF를 사용하면 스타일이나 레이아웃을 손상시키지 않고 읽기 전용 형식으로 문서를 공유할 수 있습니다. 이 기사에서는 Java의 LaTeX 소스 파일에서 PDF 문서를 만드는 방법을 배웁니다.

이 기사에서는 다음 주제를 다룹니다.

LaTeX에서 PDF를 생성하는 Java API

LaTeX 소스 파일에서 PDF 문서를 생성하기 위해 Aspose.TeX for Java API를 사용할 것입니다. TeX 파일을 PDF, XPS 또는 이미지와 같은 다른 파일 형식으로 조판할 수 있습니다. API의 JAR을 다운로드하거나 Maven 기반 Java 애플리케이션에서 다음 pom.xml 구성을 추가하십시오.

저장소:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

의존:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-tex</artifactId>
    <version>21.11</version>
    <type>jar</type>
</dependency>

Java의 LaTeX TeX 파일에서 PDF 만들기

아래 단계에 따라 LaTeX(TeX) 파일에서 PDF 문서를 만들 수 있습니다.

  1. 먼저 consoleAppOptions() 메서드를 사용하여 TeXOptions 클래스의 인스턴스를 만듭니다.
  2. TeX 구성을 TeXConfig.objectLaTeX()로 설정합니다.
  3. 다음으로 입력 및 출력 작업 디렉토리를 설정합니다.
  4. 그런 다음 콘솔 또는 메모리 스트림을 출력 터미널로 지정합니다.
  5. 그런 다음 PDF 형식으로 렌더링하기 위한 옵션을 설정합니다.
  6. 마지막으로 출력 PDF와 PdfDevice 클래스 객체를 인수로 사용하여 새로 생성된 TexJob 클래스 인스턴스에 대해 run() 메서드를 호출합니다.

다음 코드 예제는 Java를 사용하여 TeX 파일에서 PDF를 만드는 방법을 보여줍니다.

// 이 코드 예제는 TeX 소스 파일에서 PDF를 만드는 방법을 보여줍니다.
// 작업 디렉토리
String dataDir = "D:\\Files\\Tex\\";

// 조판 옵션을 만듭니다.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// 입력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// 출력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// 메모리 스트림을 출력 터미널로 지정하십시오.
options.setTerminalOut(new OutputMemoryTerminal());

// PDF 형식으로 렌더링하기 위한 옵션을 설정합니다.
options.setSaveOptions(new PdfSaveOptions());

// 조판을 실행합니다.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();
Java의 LaTeX TeX 파일에서 PDF 만들기

Java의 LaTeX TeX 파일에서 PDF를 만듭니다.

Java의 LTX 파일에서 PDF 만들기

LaTeX는 LTX 파일 확장자를 사용하여 문서 구조와 내용을 정의하는 마크업 태그와 속성을 조판합니다. 앞서 언급한 단계에 따라 LaTeX(LTX) 파일에서도 PDF를 만들 수 있습니다. 그러나 마지막 단계에서 확장자가 .ltx인 소스 파일을 입력하기만 하면 됩니다.

다음 코드 예제는 Java를 사용하여 LTX 파일에서 PDF를 만드는 방법을 보여줍니다.

// 이 코드 예제는 LTX 소스 파일에서 PDF를 만드는 방법을 보여줍니다.
// 작업 디렉토리
String dataDir = "D:\\Files\\Tex\\";

// 조판 옵션을 만듭니다.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// 입력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// 출력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// 메모리 스트림을 출력 터미널로 지정하십시오.
options.setTerminalOut(new OutputMemoryTerminal());

// PDF 형식으로 렌더링하기 위한 옵션을 설정합니다.
options.setSaveOptions(new PdfSaveOptions());

// 조판을 실행합니다.
new TeXJob(dataDir + "sample.ltx", new PdfDevice(), options).run();

Java를 사용하여 TeX를 XPS로 변환

앞서 언급한 단계에 따라 LaTeX(TeX) 파일을 XPS로 변환할 수도 있습니다. 그러나 5단계에서 PdfSaveOptions 대신 XpsSaveOptions을 설정하기만 하면 됩니다.

다음 코드 예제는 Java를 사용하여 TeX를 XPS로 변환하는 방법을 보여줍니다.

// 이 코드 예제는 Tex를 XPS로 변환하는 방법을 보여줍니다.
// 작업 디렉토리
String dataDir = "D:\\Files\\Tex\\";

// 조판 옵션을 만듭니다.
TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

// 입력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setInputWorkingDirectory(new InputFileSystemDirectory(dataDir));

// 출력을 위한 파일 시스템 작업 디렉토리를 지정하십시오.
options.setOutputWorkingDirectory(new OutputFileSystemDirectory(dataDir));

// 메모리 스트림을 출력 터미널로 지정하십시오.
options.setTerminalOut(new OutputMemoryTerminal());

// XPS 형식으로 렌더링하기 위한 옵션을 설정합니다.
options.setSaveOptions(new XpsSaveOptions());

// 조판을 실행합니다.
new TeXJob(dataDir + "sample.tex", new PdfDevice(), options).run();

Java를 사용하여 TeX ZIP 디렉토리를 PDF ZIP 디렉토리로 변환

아래 단계에 따라 ZIP 아카이브로 압축된 여러 TeX 파일을 한 번에 PDF로 변환할 수 있습니다.

  1. 먼저 ZIP 아카이브의 스트림을 입력 및 출력 작업 디렉토리로 엽니다.
  2. 다음으로 consoleAppOptions() 메서드를 사용하여 TeXOptions 클래스의 인스턴스를 만듭니다.
  3. 그런 다음 TeX 구성을 TeXConfig.objectLaTeX()로 설정합니다.
  4. 다음으로 입력 및 출력 ZIP 디렉토리를 설정합니다.
  5. 그런 다음 콘솔 또는 메모리 스트림을 출력 터미널로 지정합니다.
  6. 그런 다음 PDF 형식으로 렌더링하기 위한 옵션을 설정합니다.
  7. 마지막으로 출력 PDF와 PdfDevice 클래스 객체를 인수로 사용하여 새로 생성된 TexJob 클래스 인스턴스에 대해 run() 메서드를 호출합니다.

다음 코드 예제는 Java를 사용하여 TeX ZIP 아카이브를 PDF ZIP 아카이브로 변환하는 방법을 보여줍니다.

// 이 코드 예제는 TeX ZIP 디렉토리를 PDF ZIP 디렉토리로 변환하는 방법을 보여줍니다.
// 작업 디렉토리
String dataDir = "D:\\Files\\Tex\\";

// 입력 작업 디렉터리로 사용할 ZIP 아카이브에서 스트림을 엽니다.
final InputStream inZipStream = new FileInputStream(dataDir + "files.zip");

// 출력 작업 디렉터리로 사용할 ZIP 아카이브에서 스트림을 엽니다.
final OutputStream outZipStream = new FileOutputStream(dataDir + "files-out.zip");

try {
    // ObjectTeX 엔진 확장에서 기본 ObjectTeX 형식에 대한 변환 옵션을 만듭니다.
    TeXOptions options = TeXOptions.consoleAppOptions(TeXConfig.objectLaTeX());

    // 입력에 대한 ZIP 아카이브 작업 디렉토리를 지정하십시오.
    options.setInputWorkingDirectory(new InputZipDirectory(inZipStream, "files"));

    // 출력을 위한 ZIP 아카이브 작업 디렉토리를 지정하십시오.
    options.setOutputWorkingDirectory(new OutputZipDirectory(outZipStream));

    // 콘솔을 출력 터미널로 지정하십시오.
    options.setTerminalOut(new OutputConsoleTerminal()); // Default. Not necessary to specify.

    // 저장 옵션을 정의합니다.
    options.setSaveOptions(new PdfSaveOptions());

    // 작업을 실행합니다.
    TeXJob job = new TeXJob("sample", new PdfDevice(), options);
    job.run();

    // 결과 출력을 보려면 쓰기를 참조하십시오. 
    options.getTerminalOut().getWriter().newLine();

    // 출력 ZIP 아카이브를 완료합니다.
    ((OutputZipDirectory)options.getOutputWorkingDirectory()).finish();
} finally {
  outZipStream.close();
}
TeX ZIP 아카이브를 PDF ZIP 아카이브로 변환

TeX ZIP 아카이브를 PDF ZIP 아카이브로 변환합니다.

무료 라이선스 받기

평가 제한 없이 라이브러리를 사용해 보려면 무료 임시 라이센스를 얻으십시오.

결론

이 문서에서는 다음 방법을 배웠습니다.

  • Java의 LaTeX 소스 파일에서 PDF 출력을 생성합니다.
  • 프로그래밍 방식으로 TeX 파일에서 XPS 출력 문서를 만듭니다.
  • Java를 사용하여 TeX ZIP 아카이브를 PDF ZIP 아카이브로 변환합니다.

또한 문서를 사용하여 Aspose.TeX for Java API에 대해 자세히 알아볼 수 있습니다. 모호한 부분이 있는 경우 포럼에서 언제든지 문의해 주십시오.

또한보십시오