푸터 콘텐츠로 바로가기
JAVA용 IRONPDF 사용

Java 애플리케이션에서 PDF 파일을 동적으로 생성하는 방법

이 튜토리얼에서는 Java 애플리케이션에서 PDF 파일을 동적으로 생성하는 방법을 설명하고 텍스트, URL 및 HTML 페이지에서 PDF 페이지를 생성하는 코드 예제를 살펴봅니다. 이후에는 새 문서 인스턴스에서 암호로 보호된 PDF 파일을 생성하는 방법을 다룹니다.

IronPDF Java 라이브러리 는 개발 비용이 무료이고, 보안성이 뛰어나며, 모든 기능을 단일 라이브러리에서 100% 정확도로 제공하고, 성능이 매우 우수하기 때문에 이러한 목적에 이상적입니다.

본론으로 들어가기 전에 IronPDF 에 대해 간략하게 소개하겠습니다.

IronPDF

IronPDF Java 라이브러리 는 Iron Software 에서 개발한 가장 인기 있는 Java PDF 라이브러리로, PDF 생성, 새 파일 편집 및 기존 PDF 조작에 사용됩니다. 이 제품은 Java, Scala, Kotlin을 포함한 다양한 JVM 언어와 호환되도록 설계되었으며 Windows, Linux, Docker, Azure, AWS를 포함한 다양한 플랫폼에서 실행될 수 있습니다. IronPDF IntelliJ IDEA 및 Eclipse와 같은 인기 있는 IDE와 호환됩니다.

주요 기능으로는 HTML, HTTP, JavaScript, CSS, XML 문서 및 다양한 이미지 형식을 PDF 파일로 생성 할 수 있는 기능이 있습니다. 또한 IronPDF 머리글과 바닥글 추가 , PDF 내 표 생성 , 디지털 서명 추가, 첨부 파일 추가 , 암호 구현 및 보안 기능 구현 기능을 제공합니다. 이 프로그램은 완벽한 멀티스레딩을 비롯한 다양한 기능을 지원합니다!

자, 이제 동적 문서를 생성하는 코드 예제를 살펴보겠습니다.

우선, 새로운 Maven 리포지토리 프로젝트를 생성하세요.

새 Java 프로젝트 생성

이 튜토리얼에서는 설명 목적으로 IntelliJ IDE를 사용합니다. 원하는 IDE를 사용하셔도 됩니다. 새 Java 프로젝트를 생성하는 단계는 IDE에 따라 다를 수 있습니다. 다음 단계를 따르세요.

  1. IntelliJ IDE를 실행합니다.
  2. 파일 > 새로 만들기 > 프로젝트를 선택합니다.
  3. 프로젝트 제목을 입력하세요.
  4. 위치, 언어, 빌드 시스템 및 JDK를 선택합니다.
  5. 만들기 버튼을 클릭합니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 1: 프로젝트 생성 프로젝트 생성

프로젝트 이름을 지정하고, 위치, 언어, 빌드 시스템 및 JDK를 선택한 다음, [생성] 버튼을 선택하세요. 새로운 프로젝트가 생성될 것입니다.

이제 이 데모 Java 애플리케이션에 IronPDF 설치하세요.

IronPDF Java 라이브러리를 설치하세요.

다음 단계는 IronPDF를 설치하기 위해 pom.xml 파일에 의존성을 추가하는 것입니다. pom.xml 파일에 아래와 같이 XML 소스 코드를 추가하십시오.


<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>INSERT_LATEST_VERSION_HERE</version>
</dependency>

<dependency>
    <groupId>com.ironsoftware</groupId>
    <artifactId>ironpdf</artifactId>
    <version>INSERT_LATEST_VERSION_HERE</version>
</dependency>
XML

Maven 레포지토리에서 최신 버전의 IronPDF로 INSERT_LATEST_VERSION_HERE를 교체하십시오.

종속성을 추가한 후 프로젝트를 빌드하세요. 해당 애플리케이션은 Maven 저장소에서 라이브러리를 자동으로 설치합니다.

HTML 문자열을 PDF 파일로 변환하는 간단한 예부터 시작해 보겠습니다.

PDF 문서 생성

다음 예를 생각해 보세요.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.Paths;

public class HtmlToPdfExample {

    public static void main(String[] args) {
        // Define HTML content
        String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>";

        // Convert HTML content to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("myPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;
import java.nio.file.Paths;

public class HtmlToPdfExample {

    public static void main(String[] args) {
        // Define HTML content
        String htmlString = "<h1>My First PDF File</h1><p>This is a sample PDF file</p>";

        // Convert HTML content to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("myPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

위 함수에서는 HTML 콘텐츠가 문자열 변수에 할당됩니다. renderHtmlAsPdf 메서드는 문자열을 인수로 받아 HTML 내용을 PDF 문서 인스턴스로 변환합니다. saveAs 메서드는 위치 경로를 입력으로 받아 선택된 디렉토리에 PDF 파일 인스턴스를 저장합니다.

위 코드로 생성된 PDF 파일은 아래와 같습니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 2: 출력 출력

HTML 파일에서 PDF 파일 생성

IronPDF HTML 파일에서 PDF 파일을 생성하는 놀라운 기능도 제공합니다.

예제에 사용될 HTML 샘플 파일은 아래와 같습니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 3: 새로운 단락이 포함된 HTML 새 단락이 포함된 HTML이 렌더링되었습니다.

다음은 PDF를 생성하는 샘플 코드 조각입니다.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class HtmlFileToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("myPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class HtmlFileToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("myPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

renderHtmlFileAsPdf 메서드는 HTML 파일 경로를 인수로 받아 HTML 파일로부터 PDF 문서를 생성합니다. 이후 이 PDF 파일은 saveAs 메서드를 사용하여 로컬 드라이브에 저장됩니다.

이 프로그램이 생성한 PDF 형식 문서는 아래와 같습니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 4: PDF 출력 PDF 출력

다음 단계는 JavaScript 와 CSS가 포함된 상당한 크기의 HTML 문서를 사용하여 HTML을 PDF로 변환할 때 디자인의 정확성과 일관성을 확인하는 것입니다.

HTML 파일에서 PDF 파일 생성

다음 HTML 샘플 페이지가 사용될 예정이며, 이 페이지에는 이미지, 애니메이션, 스타일링, jQuery 및 Bootstrap이 포함되어 있습니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 5: 샘플 HTML 페이지 샘플 HTML 페이지

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 6: 샘플 HTML 샘플 HTML

샘플 HTML 문서는 광범위한 스타일링과 그래픽을 포함하고 있음을 보여줍니다. 이 HTML 파일은 PDF 문서로 변환되며, 내용과 스타일의 정확성이 평가될 것입니다.

위 예시의 코드와 동일한 코드가 사용됩니다.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class StyledHtmlToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file with styling to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("styledPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class StyledHtmlToPdfExample {

    public static void main(String[] args) {
        // Convert HTML file with styling to PDF
        PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("styledPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

이전 예제에는 이미 코드 설명이 포함되어 있습니다. 나머지는 변경되지 않았습니다.

다음은 출력된 PDF 파일입니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 7: HTML to PDF HTML을 PDF로 변환

IronPDF 사용하여 PDF 파일을 생성하는 것은 매우 간단합니다. 원본 문서의 형식과 내용이 모두 일치합니다.

URL을 사용하여 PDF 파일을 생성할 수도 있습니다.

URL을 PDF 문서로 변환

다음 코드 예제는 URL에서 PDF 파일을 생성합니다.

import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class UrlToPdfExample {

    public static void main(String[] args) {
        // Convert URL to PDF
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("urlPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import java.io.IOException;

public class UrlToPdfExample {

    public static void main(String[] args) {
        // Convert URL to PDF
        PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");

        // Save the PdfDocument to a file
        try {
            myPdf.saveAs("urlPDF.pdf");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

renderUrlAsPdf 함수는 URL을 인수로 받아 PDF 문서로 변환합니다. 이 PDF 문서는 이후 saveAs 함수를 사용하여 로컬 드라이브에 저장됩니다.

다음은 출력된 PDF 파일입니다.

Java 애플리케이션에서 동적으로 PDF 파일 생성 방법, 그림 8: 출력 PDF PDF 출력

워터마크, 헤더, 푸터, 디지털 서명 추가, XML 파일/JSP 페이지 변환 등도 가능합니다.

다음 단계는 비밀번호로 보호된 PDF 파일을 생성하는 것입니다.

암호로 보호된 PDF 파일 생성

다음 예제 코드는 생성된 PDF 파일에 보안 기능을 추가하는 방법을 보여줍니다.

import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.security.PdfEditSecurity;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import java.io.IOException;
import java.nio.file.Paths;

public class SecurePdfExample {

    public static void main(String[] args) {
        // Load an existing PDF document
        PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf"));

        // Configure security options
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT);
        securityOptions.setAllowUserAnnotations(false);
        securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
        securityOptions.setAllowUserFormData(false);
        securityOptions.setOwnerPassword("123456"); // Set owner password
        securityOptions.setUserPassword("123412"); // Set user password

        // Apply security options to the PDF document
        myPdf.applySecurity(securityOptions);

        // Save the secured PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("securedPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
import com.ironsoftware.ironpdf.PdfDocument;
import com.ironsoftware.ironpdf.security.PdfEditSecurity;
import com.ironsoftware.ironpdf.security.PdfPrintSecurity;
import com.ironsoftware.ironpdf.security.SecurityOptions;
import java.io.IOException;
import java.nio.file.Paths;

public class SecurePdfExample {

    public static void main(String[] args) {
        // Load an existing PDF document
        PdfDocument myPdf = PdfDocument.fromFile(Paths.get("myPDF.pdf"));

        // Configure security options
        SecurityOptions securityOptions = new SecurityOptions();
        securityOptions.setAllowUserEdits(PdfEditSecurity.NO_EDIT);
        securityOptions.setAllowUserAnnotations(false);
        securityOptions.setAllowUserPrinting(PdfPrintSecurity.NO_PRINT);
        securityOptions.setAllowUserFormData(false);
        securityOptions.setOwnerPassword("123456"); // Set owner password
        securityOptions.setUserPassword("123412"); // Set user password

        // Apply security options to the PDF document
        myPdf.applySecurity(securityOptions);

        // Save the secured PdfDocument to a file
        try {
            myPdf.saveAs(Paths.get("securedPDF.pdf"));
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
JAVA

위 코드는 PDF 파일을 읽기 전용으로 만들어 편집이나 단락 정렬을 허용하지 않습니다. 해당 문서는 인쇄가 제한되어 있어 인쇄할 수 없습니다. 비밀번호도 설정되었습니다. 이제 파일은 매우 안전하게 보호됩니다. 이와 같이 서로 다른 파일 권한을 정의할 수 있으며, IronPDF 사용하여 동적인 출력을 생성할 수 있습니다.

요약

이 튜토리얼에서는 PDF 파일을 생성하는 방법을 설명했습니다. HTML 문자열, HTML 파일, URL을 이용하여 PDF 파일을 생성하는 방법을 설명하며, 예시는 간단한 것부터 복잡한 것까지 다양합니다. 워터마크, 바닥글, 머리글, 전경색 추가, 페이지 병합 및 분할 등과 같은 유용한 기능이 훨씬 더 많습니다. 하지만 이 모든 기능을 여기에서 다 다룰 수는 없습니다. 더 자세한 내용을 알아보려면 IronPDF 공식 문서를 참조하십시오.

IronPDF 사용하면 HTML을 PDF로 변환하는 것이 매우 간편해집니다. HTML을 PDF로 변환하는 데 단 한 줄의 코드가 사용되었습니다. PDF 파일에 몇 가지 보안 조치가 추가되었습니다. 더 빠르고 정확하며 안전합니다. 생성된 모든 PDF 파일에는 IronPDF 워터마크가 포함됩니다. 이는 상업용 라이선스가 아닌 권한이 제한된 무료 개발 버전을 사용하고 있기 때문입니다. 필요에 따라 무료 평가판 이나 정식 라이선스를 구매하면 이 문제를 해결할 수 있습니다.

자주 묻는 질문

Java에서 HTML을 PDF 파일로 변환하는 방법은 무엇인가요?

Java에서 HTML을 PDF 파일로 변환하려면 IronPDF의 renderHtmlAsPdf 메서드를 사용하여 HTML 문자열을 변환하고 renderHtmlFileAsPdf 메서드를 사용하여 HTML 파일을 변환할 수 있습니다.

Java에서 URL을 PDF로 변환하려면 어떤 방법을 사용해야 할까요?

Java에서 URL을 PDF로 변환하려면 IronPDF의 renderUrlAsPdf 메서드를 사용하면 웹 페이지에서 PDF를 쉽게 생성할 수 있습니다.

Java에서 PDF 파일에 비밀번호를 설정하여 보안을 강화하는 방법은 무엇인가요?

Java에서는 IronPDF를 사용하여 SecurityOptions 설정함으로써 PDF에 암호를 설정하여 보호할 수 있습니다. SecurityOptions에는 암호 추가 및 PDF 문서에 대한 권한 관리가 포함됩니다.

IronPDF는 HTML을 PDF로 변환할 때 복잡한 CSS를 처리할 수 있습니까?

네, IronPDF는 HTML을 PDF로 변환할 때 복잡한 CSS도 처리할 수 있어 생성된 PDF 문서에 스타일이 정확하게 반영되도록 보장합니다.

IronPDF 무료 개발자 버전의 제한 사항은 무엇인가요?

IronPDF의 무료 개발자 버전에는 생성된 모든 PDF 파일에 워터마크가 포함됩니다. 상업용 라이선스를 구매하면 이 제한이 해제됩니다.

IronPDF는 PDF에 어떤 추가 기능을 제공합니까?

IronPDF는 워터마크, 머리글, 바닥글 추가 및 PDF 내 페이지 병합 기능과 같은 추가 기능을 제공합니다.

새로운 Java 프로젝트에 IronPDF를 설정하는 단계는 무엇인가요?

새로운 Java 프로젝트에 IronPDF를 설정하려면 Maven을 통해 라이브러리를 설치한 다음 필요한 클래스를 프로젝트로 가져와 PDF 생성을 시작하세요.

IronPDF로 생성한 PDF 파일의 편집 및 인쇄를 제한할 수 있나요?

예, IronPDF를 사용하면 특정 보안 설정을 PDF 문서에 적용하여 편집, 주석 달기, 인쇄 및 양식 데이터 입력을 제한할 수 있습니다.

IronPDF for Java는 어떤 플랫폼을 지원하나요?

IronPDF for Java는 Windows, Linux, Docker, Azure 및 AWS를 포함한 다양한 플랫폼을 지원합니다.

Java에서 IronPDF를 사용하는 방법에 대한 자세한 문서는 어디에서 찾을 수 있나요?

Java에서 IronPDF를 사용하는 방법에 대한 자세한 문서와 예제는 IronPDF 공식 웹사이트에서 찾을 수 있으며, 해당 웹사이트는 포괄적인 자료와 가이드를 제공합니다.

다리우스 세란트
풀스택 소프트웨어 엔지니어 (웹 운영)

다리우스 세런트는 마이애미 대학교에서 컴퓨터 과학 학사 학위를 받았으며, Iron Software에서 풀 스택 웹 운영 마케팅 엔지니어로 근무하고 있습니다. 어린 시절부터 코딩에 매료되었던 그는 컴퓨팅이 신비로우면서도 접근하기 쉬운 분야라고 생각했고, 창의력과 문제 해결 능력을 발휘하기에 완벽한 매체라고 여겼습니다.

Iron Software에서 다리우스는 새로운 것을 만들고 복잡한 개념을 단순화하여 더 쉽게 이해할 수 있도록 하는 것을 즐깁니다. 그는 사내 개발자로서 학생들을 가르치는 데에도 자원하여 차세대 인재들과 전문 지식을 공유하고 있습니다.

다리우스에게 있어 그의 일은 가치 있고 실질적인 영향을 미치기 때문에 보람 있는 일입니다.

아이언 서포트 팀

저희는 주 5일, 24시간 온라인으로 운영합니다.
채팅
이메일
전화해