
IronPDF for Java와 iTextPDF iText7 for Java 비교
오늘날 개발자들은 끊임없이 발전하는 기술 덕분에 더 나은 솔루션을 활용할 수 있습니다.
소프트웨어 개발 프로세스의 미래는 자동화에 달려 있습니다. PDF 파일은 오랫동안 개발자들에게 어려움을 안겨주는 존재였습니다. PDF 파일을 다룰 때(즉, 콘텐츠를 제작하거나 다른 형식의 콘텐츠를 PDF로 변환할 때) 고려해야 할 사항이 많습니다. PDF 파일을 읽고, 쓰고, 만들고, 다양한 형식에서 다른 형식으로 변환하는 데 도움을 주는 수많은 라이브러리가 개발되면서 이러한 요구 사항은 이제 충족되었습니다.
이 글에서는 자바 개발자들이 PDF 파일을 편집, 인쇄 및 생성하는 데 사용할 수 있는 가장 인기 있는 PDF 라이브러리 두 가지를 비교합니다.
- IronPDF Java 라이브러리 : HTML에서 PDF를 생성하는 데 초점을 맞춘 Java PDF 라이브러리입니다.
- ITextPDF 라이브러리: 프로그래밍 가능한 API를 사용하여 PDF를 생성하는 데 중점을 둔 Java 우선 오픈 소스 라이브러리입니다.
두 라이브러리의 기능을 살펴본 후 PDF 변환 및 처리에 필요한 성능 비용을 분석하여 어떤 라이브러리가 여러분의 애플리케이션에 가장 적합한지 알아보겠습니다. 또한, 각 도서관의 이용 시간은 추후 연구를 위해 기록될 것입니다.
IronPDF Java 설치
Java용 IronPDF 설치하려면 종속성으로 추가하기만 하면 됩니다. IronPDF를 종속성으로 정의하려면 pom.xml에 다음을 추가하십시오:
<dependency>
<groupId>com.ironsoftware</groupId>
<artifactId>ironpdf</artifactId>
<version>YOUR_VERSION_HERE</version>
</dependency>
참고: .jar 파일을 수동으로 다운로드할 수도 있습니다.
- IronPDF Java용 Maven Repository 로 이동하여 Maven 리포지토리 페이지에 접속하세요.
- 압축 파일의 내용을 추출합니다.
- 폴더를 만들고 압축 폴더의 내용을 복사합니다.
- Eclipse IDE를 엽니다.
- 새 Java 프로젝트를 생성합니다.
- IronPDF .jar 파일을 클래스 경로에 추가합니다.
- 프로젝트 생성 마법사를 완료하세요. 그게 다예요!
IronPDF 기능
개발자는 강력한 IronPDF PDF 라이브러리를 활용하여 PDF 파일을 신속하게 생성, 읽기 및 조작할 수 있습니다. IronPDF Chrome 엔진을 핵심으로 사용하며 HTML5, JavaScript, CSS 및 이미지 파일을 PDF로 변환하는 기능을 포함하여 다양하고 강력한 실용적인 기능을 제공합니다. IronPDF 고유한 머리글과 바닥글을 추가할 수 있으며, 웹 브라우저에 표시되는 것과 정확히 동일한 PDF 파일을 생성할 수 있습니다. IronPDF 는 HTML, ASPX, Razor View, MVC를 비롯한 다양한 웹 형식을 지원합니다. IronPDF의 주요 특징은 다음과 같습니다.
- 자바 프로그램을 사용하여 PDF 파일을 쉽게 생성, 읽기 및 편집할 수 있습니다.
- 사용자 에이전트, 프록시, 쿠키, HTTP 헤더 및 폼 변수 설정이 되어 있어 HTML 로그인 양식을 사용한 로그인을 지원하는 모든 웹사이트 URL 링크에서 PDF를 생성합니다.
- 기존 PDF 문서에서 사진을 제거합니다.
- PDF에 텍스트, 사진, 책갈피, 워터마크 및 기타 요소를 추가합니다.
- 여러 PDF 문서의 페이지를 병합하거나 분할합니다.
- CSS 파일을 포함한 미디어 유형 파일을 문서로 변환합니다.
ITextPDF Java 설치
iTextPDF는 iTextPDF 웹사이트 에서 무료로 이용할 수 있습니다. 이 라이브러리는 AGPL 소프트웨어 라이선스 모델에 따라 오픈 소스로 제공됩니다.
iText 라이브러리를 애플리케이션에 추가하려면 다음 Maven 저장소를 pom.xml 파일에 포함하십시오.
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>itextpdf</artifactId>
<version>5.5.13.2</version>
</dependency>
iTextPDF .jar 파일과 slf4j.jar 파일을 직접 다운로드하세요. 라이브러리를 사용하려면 iTextPDF .jar 파일을 시스템의 클래스 경로에 추가하십시오.
iText 라이브러리 기능
- HTML, XML 및 이미지(png, jpg 등)를 사용하여 PDF를 생성합니다.
- PDF 문서에 책갈피, 페이지 번호 및 표시를 추가합니다.
- PDF 파일을 여러 개의 PDF 파일로 분할하거나 여러 개의 PDF 파일을 하나의 PDF 파일로 병합합니다.
- PDF 양식을 프로그램으로 편집합니다.
- PDF에 텍스트, 이미지 및 기하학적 도형을 추가합니다.
iTextPDF Java를 사용하여 HTML 문자열을 PDF로 변환
iText for Java에서 HTMLConverter 클래스는 HTML을 PDF로 변환하는 데 주로 사용되는 클래스입니다.
HTMLConverter에는 세 가지 주요 메서드가 있습니다:
convertToDocument는Document객체를 반환합니다.convertToElements는IElement객체의 목록을 반환합니다.convertToPdf는 HTML 콘텐츠를 PDF로 변환하는 작업을 처리합니다. 이 메서드는 HTML 입력을String,File또는InputStream로 받고File,OutputStream또는Document객체를 반환합니다.
package com.hmkcode;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import com.itextpdf.html2pdf.HtmlConverter;
public class App {
// HTML content to be converted to PDF
public static final String HTML = "<h1>Hello</h1>"
+ "<p>This was created using iText</p>"
+ "<a href='http://hmkcode.com'>hmkcode.com</a>";
public static void main(String[] args) throws FileNotFoundException, IOException {
// Convert the HTML content to PDF and save it
HtmlConverter.convertToPdf(HTML, new FileOutputStream("string-to-pdf.pdf"));
System.out.println("PDF Created!");
}
}
IronPDF Java를 사용하여 HTML 문자열을 PDF로 변환합니다.
IronPDF의 PdfDocument 클래스는 Java 개발자가 다양한 소스에서 HTML 텍스트를 생성할 수 있게 해주는 여러 정적 메서드를 제공합니다. 그러한 메서드 중 하나는 HTML 마크업 문자열을 PDF 문서로 변환하는 PdfDocument.renderHtmlAsPdf 메서드입니다.
import com.ironsoftware.ironpdf.*;
import java.nio.file.Paths;
public class IronPdfExample {
public static void main(String[] args) {
// Set the license and log path
License.setLicenseKey("YOUR-LICENSE-KEY");
Settings.setLogPath(Paths.get("C:/tmp/IronPdfEngine.log"));
// Convert the HTML content to a PDF
PdfDocument myPdf = PdfDocument.renderHtmlAsPdf("<h1> ~Hello World~ </h1> Made with IronPDF!");
// Save the generated PDF
myPdf.saveAs(Paths.get("html_saved.pdf"));
}
}
ITextPDF Java를 사용하여 HTML 파일을 PDF로 변환
convertToPdf 메서드는 모든 HTML 파일을 PDF로 변환하는 데 사용할 수 있습니다.
이미지 및 CSS 파일은 HTML 파일에 포함될 수 있습니다. 그러나 그것들은 HTML 파일과 같은 위치에 있어야 합니다. 우리가 참조된 CSS 및 이미지의 기본 경로를 설정하려면 ConverterProperties 클래스를 사용할 수 있습니다. 이 기능은 HTML 파일 자산이 서로 다른 디렉토리에 위치할 때 유용합니다.
다음과 같은 마크업이 포함된 index.html 파일을 생각해 보세요.
<html>
<head>
<title>HTML to PDF</title>
<link href="style.css" rel="stylesheet" type="text/css" />
</head>
<body>
<h1>HTML to PDF</h1>
<p>
<span class="itext">itext</span> 7.1.9
<span class="description"> converting HTML to PDF</span>
</p>
<table>
<tr>
<th class="label">Title</th>
<td>iText - Java HTML to PDF</td>
</tr>
<tr>
<th>URL</th>
<td>http://hmkcode.com/itext-html-to-pdf-using-java</td>
</tr>
</table>
</body>
</html>
아래 소스 코드는 index.html 파일을 PDF로 변환합니다.
package com.hmkcode;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import com.itextpdf.html2pdf.HtmlConverter;
public class App {
public static void main(String[] args) throws FileNotFoundException, IOException {
// Convert the HTML file to PDF and save it
HtmlConverter.convertToPdf(new FileInputStream("index.html"),
new FileOutputStream("index-to-pdf.pdf"));
System.out.println("PDF Created!");
}
}
Java용 IronPDF 사용하여 HTML 파일을 PDF로 변환합니다.
IronPDF의 PdfDocument.renderHtmlFileAsPdf 메서드는 컴퓨터 또는 네트워크 파일 경로에 있는 HTML 파일을 변환합니다.
import com.ironsoftware.ironpdf.*;
import java.nio.file.Path;
import java.nio.file.Paths;
public class IronPdfExample {
public static void main(String[] args) {
// Convert the HTML file to PDF and save it
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("example.html");
myPdf.saveAs(Paths.get("html_file_saved.pdf"));
}
}
IronPDF Java를 사용하여 PDF 파일에 이미지 추가
IronPDF의 PdfDocument.fromImage 메서드를 사용하여 여러 이미지를 단일 PDF 파일로 렌더링할 수 있습니다. 다음 예제는 파일 시스템의 서로 다른 경로에 있는 짧은 이미지 목록에 이 메서드를 사용합니다.
import com.ironsoftware.ironpdf.*;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
public class IronPdfExample {
public static void main(String[] args) {
// Create an ArrayList containing the list of images that you want to combine
// into ONE PDF document
Path imageA = Paths.get("directoryA/1.png");
Path imageB = Paths.get("directoryB/2.png");
Path imageC = Paths.get("3.png");
List<Path> imageFiles = new ArrayList<>();
imageFiles.add(imageA);
imageFiles.add(imageB);
imageFiles.add(imageC);
// Convert the three images into a PDF and save them.
PdfDocument.fromImage(imageFiles).saveAs(Paths.get("assets/composite.pdf"));
}
}
ITextPDF Java를 사용하여 PDF에 이미지 추가
아래의 전체 코드 예제는 iText를 사용하여 현재 작업 디렉터리에 있는 두 이미지를 하나의 PDF 파일로 변환합니다.
import java.io.*;
import com.itextpdf.io.image.*;
import com.itextpdf.kernel.pdf.*;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class InsertImagePDF {
public static void main(String[] args) throws IOException {
String currDir = System.getProperty("user.dir");
// Getting path of current working directory to create the pdf file in the same directory
String pdfPath = currDir + "/InsertImage.pdf";
// Creating PdfWriter object to write the PDF file to the path
PdfWriter writer = new PdfWriter(pdfPath);
// Creating PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating ImageData from images on disk (from given paths) using ImageDataFactory
ImageData imageDataA = ImageDataFactory.create(currDir + "/imageA.jpg");
Image imgA = new Image(imageDataA);
ImageData imageDataB = ImageDataFactory.create(currDir + "/imageB.jpg");
Image imgB = new Image(imageDataB);
// Adding images to the document
doc.add(imgA);
doc.add(imgB);
// Close the document
doc.close();
System.out.println("Image added successfully and PDF file created!");
}
}
라이선스
iText는 오픈 소스이며 AGPL 라이선스를 받습니다.
이는 iText를 포함하는 애플리케이션을 사용하는 모든 사람이 그 애플리케이션의 소스 코드의 완전한 사본에 대한 권리를 갖는 것을 보장합니다. 이는 기업 네트워크나 인터넷을 통해 하는 경우에도 마찬가지입니다.
비즈니스 용도로 사용하시려면 iText에 직접 연락하여 라이선스 가격에 대해 문의하십시오.
IronPDF 는 개발 목적으로는 무료이며, 상업적 배포를 위해서는 언제든지 라이선스를 취득할 수 있습니다. IronPDF 라이선스 세부 정보: 단일 프로젝트 사용, 개인 개발자, 에이전시 및 글로벌 기업은 물론 SaaS 및 OEM 재배포에 대한 라이선스 정보를 제공합니다. 모든 라이선스에는 30일 환불 보장, 1년간의 제품 지원 및 업데이트, 개발/스테이징/프로덕션 환경에서의 사용 가능, 그리고 영구 라이선스(일회성 구매)가 포함됩니다.
Lite 패키지의 가격은 $999부터 시작합니다.
- 개발자는 개발 과정에서 라이브러리를 무제한으로 이용할 수 있습니다. 일반적인 면허 발급 비용 측면에서 보면, 매우 경제적입니다.
- 1년간 무제한 무료 지원.
- 라이선스 취득을 위한 무료 평가판도 제공됩니다.
- 모든 라이선스에는 30일 환불 보증이 포함됩니다.
- 라이선스는 모든 환경(개발, 스테이징, 프로덕션 등)에서 유효합니다.
- 라이선스에는 1년간 무조건적인 지원이 포함됩니다.
- IronPDF 라이선스는 일회성 구매가 필요합니다.
IronPDF 와 iText 비교
iText와 IronPDF 사이에는 몇 가지 중요한 차이점이 있습니다.
iText의 API는 프로그래밍 방식 모델을 중심으로 구성되어 있습니다. 이 모델에서는 PDF 속성 및 콘텐츠 조작이 더욱 세밀하고 세분화된 방식으로 이루어집니다. 이러한 방식은 프로그래머에게 더 많은 제어력과 유연성을 제공하지만, 사용 사례를 구현하기 위해 더 많은 코드를 작성해야 한다는 단점도 있습니다.
IronPDF의 API는 개발자의 생산성을 최적화하는 데 중점을 두고 설계되었습니다. IronPDF 개발자가 단 몇 줄의 코드로 PDF 편집, 조작, 생성 및 기타 복잡한 작업을 완료할 수 있도록 하여 이러한 작업을 간소화합니다.
결론
Iron Software 의 모든 고객은 단 두 번의 클릭만으로 전체 패키지 제품군을 구매할 수 있습니다. 현재 Iron Software Suite 의 다섯 가지 라이브러리 모두를 구매하고 각 라이브러리에 대한 지속적인 지원을 받는 데 드는 비용은 Suite 내 라이브러리 중 두 개 가격입니다.

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.
관련 기사









