Excel PDF 원 페이지 – Java 변환 및 글꼴 대체

Excel 워크북을 PDF로 변환하면서 시트당 한 페이지를 보장하고 원본 타이포그래피를 유지하는 것은 까다로울 수 있습니다. 이 튜토리얼에서는 GroupDocs.Conversion을 사용하여 Java에서 신뢰할 수 있는 excel pdf one page 변환을 수행하는 방법을 배웁니다. Maven 설정, 글꼴 대체 및 필요한 정확한 API 호출을 단계별로 안내하므로 자동화된 문서 파이프라인에 자신 있게 솔루션을 삽입할 수 있습니다.

빠른 답변

  • “시트당 한 페이지”가 의미하는 바는 무엇인가요? 각 워크시트가 단일 PDF 페이지에 렌더링되어 예상치 못한 페이지 나눔을 방지합니다.
  • 변환을 처리하는 라이브러리는 무엇인가요? Java용 GroupDocs.Conversion이 전체 기능 세트를 제공합니다.
  • 누락된 글꼴을 자동으로 교체할 수 있나요? 예—SpreadsheetLoadOptions 내부의 FontSubstitute 기능을 사용하십시오.
  • 라이선스가 필요합니까? 임시 라이선스는 평가 기간 동안 모든 변환 옵션을 활성화합니다.
  • 이 접근 방식이 대형 워크북에 적합한가요? JVM 메모리를 조정하고 Converter 인스턴스를 재사용하면 확실히 가능합니다.

excel pdf 원 페이지 변환이란 무엇인가요?

excel pdf one page conversion은 각 Excel 워크시트를 별개의 단일 페이지 PDF 문서로 변환하는 과정입니다. 이는 페이지 레이아웃이 일관되어야 하는 보고서, 청구서 및 규제 제출물에 필수적인 예측 가능한 페이지 매김을 보장합니다. 또한 다운스트림 처리를 단순화하고 각 시트가 수동 조정 없이 새 페이지에서 시작하도록 합니다.

Excel을 PDF로 변환할 때 GroupDocs.Conversion Java를 사용하는 이유는?

GroupDocs.Conversion은 50개 이상의 입력 및 출력 형식을 지원하며 전체 파일을 메모리에 로드하지 않고도 수백 개의 시트가 있는 워크북을 처리할 수 있습니다. 이 라이브러리는 내장 글꼴 대체 기능도 제공하여 원본 글꼴이 없을 경우에도 모든 장치에서 PDF가 동일하게 표시되도록 합니다. 이러한 구체적인 기능은 엔터프라이즈 규모 문서 자동화에 적합한 프로덕션 준비 선택지입니다.

필수 조건

  • Java Development Kit (JDK) 11+ 설치
  • IntelliJ IDEA 또는 Eclipse와 같은 IDE를 사용하여 Java 코드를 편집하고 실행합니다.
  • Maven을 사용한 의존성 관리.
  • 임시 GroupDocs 라이선스(공식 사이트에서 획득 가능).

Java 구문과 Maven 좌표에 대한 기본적인 이해가 도움이 되지만, 아래 단계는 모든 수준의 개발자에게 충분히 상세합니다.

GroupDocs.Conversion용 Maven 설정 방법은?

pom.xml에 GroupDocs 저장소와 변환 의존성을 추가합니다. 다음 스니펫은 필요한 정확한 XML을 보여줍니다—새 버전이 있으면 버전 번호를 최신 안정 릴리스로 교체하십시오. pom.xml을 업데이트한 후 mvn clean install을 실행하여 라이브러리를 다운로드하고 의존성이 올바르게 해결되는지 확인합니다.

<repositories>
    <repository>
        <id>groupdocs-repo</id>
        <url>https://repo.groupdocs.com/maven2</url>
    </repository>
</repositories>

<dependencies>
    <dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>conversion</artifactId>
        <version>25.2</version>
    </dependency>
</dependencies>

직접 답변: 위의 저장소 및 의존성 XML을 pom.xml에 추가한 다음 mvn clean install을 실행하여 라이브러리를 다운로드합니다. 이렇게 하면 변환 API 호출을 위한 프로젝트가 준비됩니다.

임시 GroupDocs 라이선스를 획득하고 적용하는 방법은?

GroupDocs 임시 라이선스 페이지를 방문하여 키를 요청하고 GroupDocs.Conversion.lic 파일을 프로젝트의 resources 폴더에 배치합니다. 그런 다음 런타임에 로드합니다. 라이선스를 로드하면 글꼴 대체 및 시트당 한 페이지 렌더링과 같은 모든 프리미엄 기능이 활성화되고 평가 제한 없이 변환 프로세스가 실행됩니다.

License license = new License();
license.setLicense("path/to/GroupDocs.Conversion.lic");

직접 답변: 변환 작업 전에 License#setLicense로 라이선스 파일을 로드하십시오; 이렇게 하면 글꼴 대체와 시트당 한 페이지 렌더링을 포함한 모든 프리미엄 기능이 활성화됩니다.

구현 가이드 – 시트당 한 페이지와 글꼴 대체

아래에서는 누락된 글꼴을 대체하고 워크시트당 단일 페이지를 강제하면서 Excel 파일을 PDF로 변환하는 데 필요한 각 단계를 안내합니다.

1단계: 입력 및 출력 경로 정의

소스 Excel 파일과 대상 PDF 파일을 설정합니다. 프로덕션 환경에서는 클래스패스 모호성을 피하기 위해 절대 경로를 사용하십시오.

String inputPath = "C:/documents/input.xlsx";
String outputPath = "C:/documents/output.pdf";

2단계: 글꼴 대체가 포함된 로드 옵션 생성

SpreadsheetLoadOptions 클래스는 소스 워크북을 어떻게 해석할지 지정할 수 있게 합니다.
SpreadsheetLoadOptions는 Excel 파일을 GroupDocs.Conversion에 로드하는 방식을 제어하는 구성 객체입니다.

FontSubstitute는 누락된 글꼴을 사용 가능한 대체 글꼴에 매핑하는 정의입니다.

이제 글꼴 대체를 추가합니다:

SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.getFontSubstitutes().add(new FontSubstitute("Calibri", "Arial"));
loadOptions.getFontSubstitutes().add(new FontSubstitute("Times New Roman", "Liberation Serif"));

직접 답변: FontSubstitute 항목을 추가하면 변환기가 누락된 글꼴을 지정된 대체 글꼴로 자동 교체하여 플랫폼 간 시각적 일관성을 보장합니다.

3단계: 시트당 한 페이지 활성화 및 기본 글꼴 설정

단일 페이지 레이아웃을 강제하고 직접 매치되지 않는 문자에 대한 대체 글꼴을 제공할 수 있습니다:

loadOptions.setOnePagePerSheet(true);
loadOptions.setDefaultFont("Arial");

직접 답변: setOnePagePerSheet(true)는 각 워크시트를 자체 PDF 페이지에 배치하도록 강제하고, setDefaultFont는 보편적인 대체 글꼴을 제공하여 누락된 글리프 문제를 제거합니다.

4단계: 로드 옵션으로 Converter 초기화

Converter는 제공된 로드 옵션을 사용하여 문서 변환을 수행하는 주요 클래스입니다.
로드 옵션을 Converter 생성자에 전달합니다. 이렇게 하면 즉시 사용할 수 있는 변환 엔진이 생성됩니다:

Converter converter = new Converter(new File(inputPath), loadOptions);

직접 답변: 구성된 loadOptions와 함께 Converter를 인스턴스화하면 변환 중에 글꼴 대체와 페이지 매김 규칙을 모두 준수하도록 엔진을 준비합니다.

5단계: PDF 변환 옵션 정의 및 실행

PdfConvertOptions는 페이지 크기 및 압축과 같은 PDF 전용 출력 매개변수를 구성합니다.
출력 형식 및 PDF 전용 설정을 지정한 후 변환을 실행합니다:

PdfConvertOptions pdfOptions = new PdfConvertOptions();
converter.convert(outputPath, pdfOptions);

직접 답변: PdfConvertOptions와 함께 converter.convert를 호출하면 시트당 한 페이지 설정을 준수하고 앞서 정의한 모든 글꼴 대체를 포함한 PDF가 작성됩니다.

일반적인 문제 및 해결책

  • 누락된 글꼴: 대체 글꼴이 호스트 머신에 설치되어 있거나 애플리케이션 JAR에 포함되어 있는지 확인하십시오.
  • 경로 오류: 특히 Linux 서버에 배포할 때 플랫폼에 독립적인 경로 처리를 위해 Paths.get(...)를 사용하십시오.
  • 매우 큰 워크북에 대한 메모리 부족: JVM 힙(-Xmx4g)을 늘리거나 워크시트당 Converter를 재인스턴스화하여 배치 처리하십시오.

excel pdf 원 페이지 변환의 실용적인 적용 사례

  1. 재무 보고: 각 시트(대차대조표, 손익계산서, 현금 흐름)가 새 페이지에서 시작하도록 보장하여 감사 검토를 간소화합니다.
  2. 법률 계약: 정확한 레이아웃과 글꼴 충실도를 유지하여 실행 가능한 계약에 필수적입니다.
  3. 학술 출판: 연구 데이터 표가 PDF로 공유될 때 형식을 유지하도록 합니다.
  4. 마케팅 자료: Excel 기반 디자인 템플릿에서 인쇄 준비가 된 브로셔를 수동 조정 없이 생성합니다.
  5. 문서 관리 시스템: 업로드된 Excel 파일에 대한 신뢰할 수 있는 PDF 미리보기를 제공하여 사용자 경험을 향상시킵니다.

대형 워크북을 위한 성능 팁

  • 스트림 I/O: 전체 파일을 메모리에 로드하지 않도록 InputStream/OutputStream을 사용하십시오.
  • Converter 재사용: 배치 작업에서는 단일 Converter 인스턴스를 유지하고 입력 파일 참조만 변경하십시오.
  • JVM 튜닝: 예상 워크북 크기에 따라 -Xms-Xmx를 조정하십시오; 500페이지 워크북은 일반적으로 2‑3 GB 힙이 필요합니다.

자주 묻는 질문

Q: GroupDocs.Conversion Java는 무엇에 사용되나요?
A: Excel을 PDF로 변환을 포함해 50개 이상의 문서 형식을 변환하는 Java 라이브러리이며, 글꼴 대체 및 시트당 한 페이지와 같은 고급 옵션을 제공합니다.

Q: 라이선스를 구매하지 않고 GroupDocs.Conversion을 사용할 수 있나요?
A: 예, 무료 체험 또는 임시 라이선스를 통해 평가 목적에 전체 기능을 사용할 수 있습니다.

Q: 변환 중 누락된 글꼴을 어떻게 처리하나요?
A: SpreadsheetLoadOptions 내부에 FontSubstitute 객체를 정의하면 엔진이 자동으로 사용 불가능한 글꼴을 지정한 대체 글꼴로 교체합니다.

Q: GroupDocs.Conversion을 사용한 Java 성능 최적화를 위한 모범 사례는 무엇인가요?
A: 스트리밍 I/O를 사용하고 적절한 JVM 힙 크기를 구성하며 여러 파일에 대해 단일 Converter 인스턴스를 재사용하십시오.

Q: “시트당 한 페이지” 옵션이 차트 렌더링에 영향을 줍니까?
A: 아니요, 차트는 시각적 충실도를 유지하면서 자동으로 단일 페이지에 맞게 스케일됩니다.

결론

이제 GroupDocs.Conversion을 사용하여 excel pdf 원 페이지 페이지 매김 및 자동 글꼴 대체와 함께 Java에서 Excel을 PDF로 변환하는 완전하고 프로덕션 준비된 방법을 갖추었습니다. 이 솔루션은 일관된 타이포그래피, 예측 가능한 페이지 매김을 제공하고 대형 워크북에서도 효율적으로 확장되어 자동 보고, 법률 문서 생성 및 PDF 충실도가 중요한 모든 시나리오에 이상적입니다.

다음 단계

  • PdfConvertOptions를 실험하여 보관을 위한 PDF/A 준수를 활성화합니다.
  • 이 변환 파이프라인을 GroupDocs.Annotation과 결합하여 PDF 생성 후 워터마크 또는 디지털 서명을 추가합니다.
  • 동일한 패턴을 사용하여 다른 형식(Word, PowerPoint) 변환을 탐색하여 통합 문서 처리 서비스를 구축합니다.

Last Updated: 2026-07-06
Tested With: GroupDocs.Conversion 25.2
Author: GroupDocs

<repositories>
   <repository>
      <id>repository.groupdocs.com</id>
      <name>GroupDocs Repository</name>
      <url>https://releases.groupdocs.com/conversion/java/</url>
   </repository>
</repositories>

<dependencies>
   <dependency>
      <groupId>com.groupdocs</groupId>
      <artifactId>groupdocs-conversion</artifactId>
      <version>25.2</version>
   </dependency>
</dependencies>
import com.groupdocs.conversion.Converter;
import com.groupdocs.conversion.options.convert.PdfConvertOptions;

public class ConvertExcelToPDF {
    public static void main(String[] args) {
        String inputDocument = "sample.xlsx";
        String convertedFile = "output.pdf";

        // Initialize the Converter object with your document path
        Converter converter = new Converter(inputDocument);

        PdfConvertOptions options = new PdfConvertOptions();
        
        // Perform the conversion
        converter.convert(convertedFile, options);
    }
}
String inputDocument = "YOUR_DOCUMENT_DIRECTORY/sample.xlsx";
String convertedFile = "YOUR_OUTPUT_DIRECTORY/ConvertSpreadsheetBySpecifyingFontsubstitution.pdf";
import com.groupdocs.conversion.options.load.SpreadsheetLoadOptions;
import com.groupdocs.conversion.contracts.FontSubstitute;

List<FontSubstitute> fontSubstitutes = new ArrayList<>();
fontSubstitutes.add(FontSubstitute.create("Tahoma", "Arial")); // Substitute Tahoma with Arial
fontSubstitutes.add(FontSubstitute.create("Times New Roman", "Arial")); // Substitute Times New Roman with Arial

SpreadsheetLoadOptions loadOptions = new SpreadsheetLoadOptions();
loadOptions.setFontSubstitutes(fontSubstitutes);
loadOptions.setDefaultFont("resources/fonts/Helvetica.ttf");
loadOptions.setOnePagePerSheet(true);
Converter converter = new Converter(inputDocument, () -> loadOptions);
PdfConvertOptions options = new PdfConvertOptions();
converter.convert(convertedFile, options);

관련 튜토리얼