iText-퀵 가이드
PDF (Portable Document Format)는 응용 프로그램 소프트웨어, 하드웨어 및 운영 체제에 독립적 인 방식으로 데이터를 표시하는 데 도움이되는 파일 형식입니다. 각 PDF 파일에는 텍스트, 글꼴, 그래픽 및이를 표시하는 데 필요한 기타 정보를 포함하여 고정 레이아웃 플랫 문서에 대한 설명이 들어 있습니다.
다음과 같은 프로그램을 통해 PDF 문서를 생성하고 조작 할 수있는 여러 라이브러리가 있습니다.
Adobe PDF Library−이 라이브러리는 C ++, .NET 및 Java와 같은 언어로 API를 제공합니다. 이를 사용하여 PDF 문서에서 텍스트를 편집,보기, 인쇄 및 추출 할 수 있습니다.
Formatting Objects Processor− XSL Formatting Objects 및 출력 독립 포맷터로 구동되는 오픈 소스 인쇄 포맷터. 기본 출력 대상은 PDF입니다.
PDF Box− Apache PDFBox는 PDF 문서의 개발 및 변환을 지원하는 오픈 소스 Java 라이브러리입니다. 이 라이브러리를 사용하여 PDF 문서를 작성, 변환 및 조작하는 Java 프로그램을 개발할 수 있습니다.
Jasper Reports − Microsoft Excel, RTF, ODT, 쉼표로 구분 된 값 및 XML 파일을 포함한 PDF 문서의 보고서를 생성하는 Java보고 도구입니다.
iText 란 무엇입니까?
위에 나열된 소프트웨어의 iText와 유사하게 Java PDF 라이브러리를 사용하여 PDF 문서를 작성, 변환 및 조작하는 Java 프로그램을 개발할 수 있습니다.
iText의 특징
다음은 iText 라이브러리의 주목할만한 기능입니다-
Interactive− iText는 대화 형 PDF 문서를 생성하기위한 클래스 (API)를 제공합니다. 이를 사용하여지도와 책을 만들 수 있습니다.
Adding bookmarks, page numbers, etc − iText를 사용하여 북마크, 페이지 번호 및 워터 마크를 추가 할 수 있습니다.
Split & Merge − iText를 사용하여 기존 PDF를 여러 PDF로 분할하고 추가 페이지를 추가 / 연결할 수 있습니다.
Fill Forms − iText를 사용하여 PDF 문서에서 대화 형 양식을 채울 수 있습니다.
Save as Image − iText를 사용하여 PDF를 PNG 또는 JPEG와 같은 이미지 파일로 저장할 수 있습니다.
Canvas − iText 라이브러리는 원, 선 등과 같은 PDF 문서에 다양한 기하학적 모양을 그릴 수있는 Canvas 클래스를 제공합니다.
Create PDFs− iText를 사용하여 Java 프로그램에서 새 PDF 파일을 생성 할 수 있습니다. 이미지와 글꼴도 포함 할 수 있습니다.
IText 환경
Eclipse에서 iText 환경을 설정하려면 아래 단계를 따르십시오.
Step 1 − Eclipse를 설치하고 아래와 같이 새 프로젝트를 엽니 다.
Step 2 − 생성 iTextSample 프로젝트는 아래와 같습니다.
Step 3− 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 아래와 같이 Maven 프로젝트로 변환합니다. Maven 프로젝트로 변환하면pom.xml필요한 종속성을 언급해야합니다. 그 후jar 이러한 종속성의 파일은 프로젝트에 자동으로 다운로드됩니다.
Step 4 − 이제 pom.xml 프로젝트의 다음 내용 (iText 응용 프로그램에 대한 종속성)을 복사하여 붙여넣고 프로젝트를 새로 고칩니다.
Using pom.xml
프로젝트를 Maven 프로젝트로 변환하고 다음 콘텐츠를 해당 프로젝트에 추가합니다. pom.xml.
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>SanthoshExample</groupId>
<artifactId>SanthoshExample</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- always needed -->
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>kernel</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>io</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>layout</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>forms</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>pdfa</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>sign</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>barcodes</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>font-asian</artifactId>
<version>7.0.2</version>
</dependency>
<dependency>
<groupId>com.itextpdf</groupId>
<artifactId>hyph</artifactId>
<version>7.0.2</version>
</dependency>
</dependencies>
</project>
마지막으로 Maven 종속성을 관찰하면 필요한 모든 jar 파일이 다운로드되었습니다.
이제 iText 라이브러리를 사용하여 PDF 문서를 만드는 방법을 이해하겠습니다.
빈 PDF 문서 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
다음은 빈 PDF 문서를 만드는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF 용 문서 작성기를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/sample.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : 빈 페이지 추가
그만큼 addNewPage() 의 방법 PdfDocument 클래스는 PDF 문서에서 빈 페이지를 만드는 데 사용됩니다.
아래와 같이 이전 단계에서 만든 PDF 문서에 빈 페이지를 추가합니다.
// Adding an empty page
pdfDoc.addNewPage();
4 단계 : 문서 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
5 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음은 PDF 문서 작성을 보여주는 Java 프로그램입니다. 이름을 가진 PDF 문서를 생성합니다.sample.pdf, 빈 페이지를 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. create_PDF.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
public class create_PDF {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/sample.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
// Adding a new page
pdfDoc.addNewPage();
// Creating a Document
Document document = new Document(pdfDoc);
// Closing the document
document.close();
System.out.println("PDF Created");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac create_PDF.java
java create_PDF
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
PDF created
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 문서는 빈 문서이므로이 문서를 열려고하면 다음 스크린 샷과 같이 오류 메시지가 표시됩니다.
이 장에서는 iText 라이브러리를 사용하여 AreaBreak로 PDF 문서를 만드는 방법을 살펴 봅니다.
AreaBreak 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 영역 나누기를 추가하려면 다음을 인스턴스화해야합니다.AreaBreak 수업과 add 이 개체를 사용하여 문서화 add() 방법.
다음은 AreaBreak를 사용하여 빈 PDF 문서를 만드는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter 클래스는 PDF의 문서 작성기를 나타냅니다.이 클래스는 패키지에 속합니다. com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 PDF를 만들어야하는 경로를 나타내는 문자열 값을 생성자에 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingAreaBreak.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocument class는 iText에서 PDF 문서를 나타내는 클래스이며이 클래스는 패키지에 속합니다. com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 객체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부, 이벤트 핸들러와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : 문서 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 영역 나누기 개체 만들기
그만큼 AreaBreak 클래스는 패키지에 속합니다. com.itextpdf.layout.element. 이 클래스를 인스턴스화 할 때 현재 컨텍스트 영역이 종료되고 동일한 크기로 새 컨텍스트 영역이 생성됩니다 (기본 생성자를 사용하는 경우).
인스턴스화 AreaBreak 아래와 같이 클래스.
// Creating an Area Break
AreaBreak aB = new AreaBreak();
5 단계 : AreaBreak 추가
추가 areabreak 이전 단계에서 만든 개체 add() 아래와 같이 Document 클래스의 메서드입니다.
// Adding area break to the PDF
document.add(aB);
6 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 AreaBreak로 PDF 문서를 작성하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingAreaBreak.pdf, 추가 areabreak 그것에, 그것을 경로에 저장합니다 C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. AddingAreaBreak.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.AreaBreak;
public class AddingAreaBreak {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/addingAreaBreak.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document by passing PdfDocument object to its constructor
Document document = new Document(pdf);
// Creating an Area Break
AreaBreak aB = new AreaBreak();
// Adding area break to the PDF
document.add(aB);
// Closing the document
document.close();
System.out.println("Pdf created");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingAreaBreak.java
java AddingAreaBreak
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Pdf Created
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서를 만들고 단락을 추가하는 방법을 살펴 봅니다.
단락 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 단락을 추가하려면 다음을 인스턴스화해야합니다.Paragraph 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
다음은 단락이있는 PDF 문서를 만드는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF 용 문서 작성기를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingParagraph.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : 문서 클래스 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout루트 요소입니다. 자급 자족 PDF를 만드는 동안. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
클래스의 객체를 전달하여 Document 클래스를 인스턴스화합니다. PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : Paragraph 개체 만들기
그만큼 Paragraph클래스는 텍스트 및 그래픽 정보의 자체 포함 된 블록을 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Paragraph 아래와 같이 텍스트 콘텐츠를 생성자에 문자열로 전달하여 클래스.
String para = "Welcome to Tutorialspoint.";
// Creating an Area Break
Paragraph para = new Paragraph (para);
5 단계 : 단락 추가
추가 Paragraph 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding area break to the PDF
document.add(para);
6 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서를 작성하고 여기에 단락을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingParagraph.pdf, 단락을 추가하고 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. AddingParagraph.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
public class AddingParagraph {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/addingParagraph.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
String para1 = "Tutorials Point originated from the idea that there exists
a class of readers who respond better to online content and prefer to learn
new skills at their own pace from the comforts of their drawing rooms.";
String para2 = "The journey commenced with a single tutorial on HTML in 2006
and elated by the response it generated, we worked our way to adding fresh
tutorials to our repository which now proudly flaunts a wealth of tutorials
and allied articles on topics ranging from programming languages to web designing
to academics and much more.";
// Creating Paragraphs
Paragraph paragraph1 = new Paragraph(para1);
Paragraph paragraph2 = new Paragraph(para2);
// Adding paragraphs to document
document.add(paragraph1);
document.add(paragraph2);
// Closing the document
document.close();
System.out.println("Paragraph added");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingParagraph.java
java AddingParagraph
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Paragraph added
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서를 만들고 목록을 추가하는 방법을 살펴 봅니다.
목록 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 목록을 추가하려면 다음을 인스턴스화해야합니다.List 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
다음은 PDF 문서를 만들고 목록을 추가하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingList.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocument class는 iText에서 PDF 문서를 나타내는 클래스이며이 클래스는 패키지에 속합니다. com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : List 개체 만들기
그만큼 List클래스는 세로로 윤곽이 그려진 일련의 개체를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 List 아래와 같이 클래스.
// Creating a list
List list = new List();
5 단계 : 목록에 요소 추가
내용 추가 list 개체를 사용하여 add() 의 방법 List 아래와 같이 String 값을 전달하여 클래스.
// Add elements to the list
list.add("Java");
list.add("JavaFX");
list.add("Apache Tika");
list.add("OpenCV");
6 단계 : 문서에 목록 추가
추가 list 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(list);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서를 작성하고 목록을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingList.pdf, 목록을 추가하고 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름이있는 파일에 저장 AddingList.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.List;
import com.itextpdf.layout.element.Paragraph;
public class AddingList {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/addngList.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating a Paragraph
Paragraph paragraph = new Paragraph("Tutorials Point provides the following tutorials");
// Creating a list
List list = new List();
// Add elements to the list
list.add("Java");
list.add("JavaFX");
list.add("Apache Tika");
list.add("OpenCV");
list.add("WebGL");
list.add("Coffee Script");
list.add("Java RMI");
list.add("Apache Pig");
// Adding paragraph to the document
document.add(paragraph);
// Adding list to the document
document.add(list);
// Closing the document
document.close();
System.out.println("List added");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingList.java
java AddingList
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
List added
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서를 만들고 테이블을 추가하는 방법을 살펴 봅니다.
PDF에 표 추가
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument생성자에 대한 매개 변수로 객체. 그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다.Table 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
다음은 표가있는 PDF 문서를 만드는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
인스턴스화 PdfWriter 아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 클래스.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingTable.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Table 아래와 같이 클래스.
// Creating a table object
float [] pointColumnWidths = {150F, 150F, 150F};
Table table = new Table(pointColumnWidths);
5 단계 : 표에 셀 추가
만들기 cell 개체를 인스턴스화하여 Cell 패키지 클래스 com.itextpdf.layout.element. 다음을 사용하여 셀의 내용을 추가합니다.add() 이 클래스의 메서드.
마지막으로이 셀을 테이블에 추가하려면 addCell() 의 방법 Table 수업과 통과 cell 아래와 같이이 메서드에 대한 매개 변수로 개체를 사용합니다.
// Adding cell 1 to the table
Cell cell1 = new Cell(); // Creating a cell
cell1.add("Name"); // Adding content to the cell
table.addCell(cell1); // Adding cell to the table
// Adding cell 2 to the table Cell
cell2 = new Cell(); // Creating a cell
cell2.add("Raju"); // Adding content to the cell
table.addCell(cell2); // Adding cell to the table
6 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서를 작성하고 여기에 테이블을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingTable.pdf, 테이블을 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. AddingTable.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
public class AddingTable {
public static void main(String args[]) throws Exception {
// Creating a PdfDocument object
String dest = "C:/itextExamples/addingTable.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdf);
// Creating a table
float [] pointColumnWidths = {150F, 150F, 150F};
Table table = new Table(pointColumnWidths);
// Adding cells to the table
table.addCell(new Cell().add("Name"));
table.addCell(new Cell().add("Raju"));
table.addCell(new Cell().add("Id"));
table.addCell(new Cell().add("1001"));
table.addCell(new Cell().add("Designation"));
table.addCell(new Cell().add("Programmer"));
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Table created successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingTable.java
java AddingTable
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Table created successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서를 만들고 표를 추가하고 표의 셀 내용을 포맷하는 방법을 살펴 봅니다.
표의 셀 서식 지정
빈 PDF를 만들 수 있습니다. DocumentDocument 클래스를 인스턴스화하여. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다.Table 클래스를 사용하여이 개체를 문서에 추가합니다. add()방법. 다음 방법을 사용하여 표에서 셀 내용의 서식을 지정할 수 있습니다.Cell 수업.
다음은 표에서 셀 내용의 서식을 지정하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingBackground.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDFDocument를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 위에서 생성 된 PdfWriter 객체를 생성자에 추가합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
한 번 PdfDocument 객체가 생성되면 해당 클래스에서 제공하는 각 메소드를 사용하여 페이지, 글꼴, 파일 첨부, 이벤트 핸들러와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
아래와 같이 Table 클래스를 인스턴스화합니다.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
5 단계 : 셀 만들기
만들기 cell 개체를 인스턴스화하여 Cell 패키지 클래스 com.itextpdf.layout.element. 다음을 사용하여 셀의 내용을 추가합니다.add() 의 방법 Cell 아래와 같이 클래스.
// Adding cell 1 to the table
Cell cell1 = new Cell(); // Creating a cell
cell1.add("Name"); // Adding content to the cell
// Adding cell 2 to the table
Cell cell2 = new Cell(); // Creating a cell
cell2.add("Raju"); // Adding content to the cell
6 단계 : 셀에 배경 추가
셀을 만들고 내용을 추가 한 후에는 셀 서식을 지정할 수 있습니다. 예를 들어, 다음과 같은 셀 클래스의 다른 메서드를 사용하여 배경을 설정하고, 셀 내부에 텍스트를 정렬하고, 텍스트 색상을 변경하는 등의 작업을 수행 할 수 있습니다.setBackgroundColor(), setBorder(), setTextAlignment().
아래와 같이 이전 단계에서 만든 셀에 배경색, 테두리 및 텍스트 정렬을 설정할 수 있습니다.
c1.setBackgroundColor(Color.DARK_GRAY); // Setting background color to cell1
c1.setBorder(Border.NO_BORDER); // Setting border to cell1
c1.setTextAlignment(TextAlignment.CENTER); // Setting text alignment to cell1
7 단계 : 표에 셀 추가
마지막으로이 셀을 테이블에 추가하려면 addCell() 의 방법 Table 수업과 통과 cell 아래와 같이이 메서드에 대한 매개 변수로 개체를 사용합니다.
table.addCell(c1);
8 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
9 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 테이블의 셀 내용을 형식화하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingBackground.pdf, 테이블을 추가하고, 셀의 내용을 포맷하고, 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. BackgroundToTable.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.border.Border;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
public class BackgroundToTable {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/addingBackground.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
// Populating row 1 and adding it to the table
Cell c1 = new Cell(); // Creating cell 1
c1.add("Name"); // Adding name to cell 1
c1.setBackgroundColor(Color.DARK_GRAY); // Setting background color
c1.setBorder(Border.NO_BORDER); // Setting border
c1.setTextAlignment(TextAlignment.CENTER); // Setting text alignment
table.addCell(c1); // Adding cell 1 to the table
Cell c2 = new
Cell();
c2.add("Raju");
c2.setBackgroundColor(Color.GRAY);
c2.setBorder(Border.NO_BORDER);
c2.setTextAlignment(TextAlignment.CENTER);
table.addCell(c2);
// Populating row 2 and adding it to the table
Cell c3 = new Cell();
c3.add("Id");
c3.setBackgroundColor(Color.WHITE);
c3.setBorder(Border.NO_BORDER);
c3.setTextAlignment(TextAlignment.CENTER);
table.addCell(c3);
Cell c4 = new Cell();
c4.add("001");
c4.setBackgroundColor(Color.WHITE);
c4.setBorder(Border.NO_BORDER);
c4.setTextAlignment(TextAlignment.CENTER);
table.addCell(c4);
// Populating row 3 and adding it to the table
Cell c5 = new Cell();
c5.add("Designation");
c5.setBackgroundColor(Color.DARK_GRAY);
c5.setBorder(Border.NO_BORDER);
c5.setTextAlignment(TextAlignment.CENTER);
table.addCell(c5);
Cell c6 = new Cell();
c6.add("Programmer");
c6.setBackgroundColor(Color.GRAY);
c6.setBorder(Border.NO_BORDER);
c6.setTextAlignment(TextAlignment.CENTER);
table.addCell(c6);
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Background added successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac BackgroundToTable.java
java BackgroundToTable
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Background added successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 표의 셀 테두리 서식을 지정하는 방법을 알아 봅니다.
셀 테두리 서식 지정
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다. Table 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
다음과 같은 다양한 유형의 테두리를 추가 할 수 있습니다. DashedBorder, SolidBorder, DottedBorder, DoubleBorder, RoundDotsBorder를 사용하여 다양한 색상으로 등 setBorder() 의 방법 Cell 수업.
다음은 표에서 셀의 테두리 서식을 지정하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/coloredBorders.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDFDocument를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 위에서 생성 된 PdfWriter 객체를 생성자에 추가합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Table 아래와 같이 클래스.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
5 단계 : 셀 만들기
인스턴스화하여 셀 개체를 만듭니다. Cell 패키지 클래스 com.itextpdf.layout.element 사용하여 셀의 내용을 추가 add() 의 방법 Cell 아래와 같이 클래스.
// Adding cell 1 to the table
Cell cell1 = new Cell(); // Creating a cell
cell1.add("Name"); // Adding content to the cell
6 단계 : 셀 테두리 서식 지정
iText 라이브러리는 다음과 같은 테두리를 나타내는 다양한 클래스를 제공합니다. DashedBorder, SolidBorder, DottedBorder, DoubleBorder, RoundDotsBorder등
이 클래스의 생성자는 두 개의 매개 변수를 허용합니다. color 테두리의 색상을 나타내는 객체와 integer 테두리의 너비를 나타냅니다.
이 테두리 유형 중 하나를 선택하고 color 개체와 integer 아래와 같이 너비를 나타냅니다.
Border b1 = new DashedBorder(Color.RED, 3);
이제 다음을 사용하여 셀의 테두리를 설정합니다. setBorder() 의 방법 cell수업. 이 메소드는 다음 유형의 객체를받습니다.Border 매개 변수로.
위 생성 된 내용을 전달하여 셀의 테두리를 설정합니다. Border 개체를 매개 변수로 setBorder() 방법은 아래와 같습니다.
c1.setBorder(b1)
마지막으로이 셀을 테이블에 추가하려면 addCell() 의 방법 Table 수업과 통과 cell 아래와 같이이 메서드에 대한 매개 변수로 개체를 사용합니다.
table.addCell(c1);
7 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 테이블에서 셀의 테두리를 형식화하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.coloredBorders.pdf, 테이블을 추가하고, 셀의 내용을 포맷하고, 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. FormatedBorders.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.border.Border;
import com.itextpdf.layout.border.DashedBorder;
import com.itextpdf.layout.border.DottedBorder;
import com.itextpdf.layout.border.DoubleBorder;
import com.itextpdf.layout.border.RoundDotsBorder;
import com.itextpdf.layout.border.SolidBorder;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
public class FormatedBorders {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/coloredBorders.pdf";
PdfWriter writer = new
PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
// Adding row 1 to the table
Cell c1 = new Cell();
// Adding the contents of the cell
c1.add("Name");
// Setting the back ground color of the cell
c1.setBackgroundColor(Color.DARK_GRAY);
// Instantiating the Border class
Border b1 = new DashedBorder(Color.RED, 3);
// Setting the border of the cell
c1.setBorder(b1);
// Setting the text alignment
c1.setTextAlignment(TextAlignment.CENTER);
// Adding the cell to the table
table.addCell(c1);
Cell c2 = new Cell();
c2.add("Raju");
c1.setBorder(new SolidBorder(Color.RED, 3));
c2.setTextAlignment(TextAlignment.CENTER);
table.addCell(c2);
// Adding row 2 to the table
Cell c3 = new Cell();
c3.add("Id");
c3.setBorder(new DottedBorder(Color.DARK_GRAY, 3));
c3.setTextAlignment(TextAlignment.CENTER);
table.addCell(c3);
Cell c4 = new Cell();
c4.add("001");
c4.setBorder(new DoubleBorder(Color.DARK_GRAY, 3));
c4.setTextAlignment(TextAlignment.CENTER);
table.addCell(c4);
// Adding row 3 to the table
Cell c5 = new Cell();
c5.add("Designation");
c5.setBorder(new RoundDotsBorder(Color.RED, 3));
c5.setTextAlignment(TextAlignment.CENTER);
table.addCell(c5);
Cell c6 = new Cell();
c6.add("Programmer");
c6.setBorder(new RoundDotsBorder(Color.RED, 3));
c6.setTextAlignment(TextAlignment.CENTER);
table.addCell(c6);
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Borders added successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac FormatedBorders.java
java FormatedBorders
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Borders added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서의 표에 이미지를 추가하는 방법을 알아 봅니다.
테이블에 이미지 추가
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다.Table 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
이 테이블에 이미지를 추가하려면 다음을 인스턴스화해야합니다. Cell 클래스를 만들고 추가해야하는 이미지의 개체를 만들고 cell 개체를 사용하여 add() 의 방법 Cell 수업.
다음은 표의 셀에 이미지를 삽입하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter 클래스는 PDF의 문서 작성기를 나타냅니다.이 클래스는 패키지에 속합니다. com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 PDF를 만들어야하는 경로를 나타내는 문자열 값을 생성자에 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 아래와 같이 생성자에 위에서 생성 된 PdfWriter 객체를 전달하여 클래스.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Table 아래와 같이 클래스.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
5 단계 : 셀 만들기
만들기 cell 개체를 인스턴스화하여 Cell 패키지 클래스 com.itextpdf.layout, 아래 그림과 같이.
// Adding cell to the table
Cell cell = new Cell(); // Creating a cell
6 단계 : 이미지 생성
만들려면 image 객체, 우선, 생성 ImageData 개체를 사용하여 create() 의 방법 ImageDataFactory수업. 이 메서드의 매개 변수로 아래와 같이 이미지의 경로를 나타내는 문자열 매개 변수를 전달합니다.
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
이제 인스턴스화 Image 클래스 com.itextpdf.layout.element꾸러미. 인스턴스화하는 동안ImageData 아래와 같이 생성자에 대한 매개 변수로 위에서 생성 된 객체.
// Creating an Image object
Image img = new Image(data);
추가 image 개체를 사용하여 셀에 add() 아래와 같이 셀 클래스의 메서드.
// Adding image to the cell
cell.add(img.setAutoScale(true));
7 단계 : 표에 셀 추가
마지막으로이 셀을 테이블에 추가하려면 addCell() 의 방법 Table 수업과 통과 cell 아래와 같이이 메서드에 대한 매개 변수로 개체를 사용합니다.
table.addCell(cell);
8 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
9 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서의 테이블 셀에 이미지를 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingImage.pdf, 테이블을 추가하고 이미지 (javafxLogo.jpg)를 셀 중 하나에 삽입 한 다음 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. AddingImageToTable.java.
import com.itextpdf.io.image.ImageData;
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Image;
import com.itextpdf.layout.element.Table;
public class a3AddingImageToTable {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/addingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths = {150f, 150f};
Table table = new Table(pointColumnWidths);
// Populating row 1 and adding it to the table
Cell cell1 = new Cell();
cell1.add("Tutorial ID");
table.addCell(cell1);
Cell cell2 = new Cell();
cell2.add("1");
table.addCell(cell2);
// Populating row 2 and adding it to the table
Cell cell3 = new Cell();
cell3.add("Tutorial Title");
table.addCell(cell3);
Cell cell4 = new Cell();
cell4.add("JavaFX");
table.addCell(cell4);
// Populating row 3 and adding it to the table
Cell cell5 = new Cell();
cell5.add("Tutorial Author");
table.addCell(cell5);
Cell cell6 = new Cell();
cell6.add("Krishna Kasyap");
table.addCell(cell6);
// Populating row 4 and adding it to the table
Cell cell7 = new Cell();
cell7.add("Submission date");
table.addCell(cell7);
Cell cell8 = new Cell();
cell8.add("2016-07-06");
table.addCell(cell8);
// Populating row 5 and adding it to the table
Cell cell9 = new Cell();
cell9.add("Tutorial Icon");
table.addCell(cell9);
// Creating the cell10
Cell cell10 = new Cell();
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
// Creating the image
Image img = new Image(data);
// Adding image to the cell10
cell10.add(img.setAutoScale(true));
// Adding cell110 to the table
table.addCell(cell10);
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Image added to table successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingImageToTable.java
java AddingImageToTable
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Image added to table successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서의 테이블에 중첩 테이블을 추가하는 방법을 알아 봅니다.
PDF에 중첩 테이블 추가
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. 그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다.Table 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
이 테이블에 테이블을 추가하려면 다른 테이블 (중첩 된 테이블)을 생성하고 다음을 사용하여 셀 객체에 전달해야합니다. add() 의 방법 Cell 수업.
다음은 표의 셀에 표를 삽입하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingNestedTable.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다. PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Table 아래와 같이 클래스.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
5 단계 : 셀 만들기
만들기 cell 개체를 인스턴스화하여 Cell 패키지 클래스 com.itextpdf.layout, 아래 그림과 같이.
// Adding cell to the table
Cell contact = new Cell(); // Creating a cell
6 단계 : 중첩 테이블 만들기
생성 후 cell, 중첩 된 테이블을 만들고 아래에 표시된대로 셀을 채 웁니다.
// Creating nested table for contact
float [] pointColumnWidths2 = {150f, 150f};
Table nestedTable = new Table(pointColumnWidths2);
// Populating row 1 and adding it to the nested table
Cell nested1 = new Cell();
nested1.add("Phone");
nestedTable.addCell(nested1);
Cell nested2 = new Cell();
nested2.add("9848022338");
nestedTable.addCell(nested2);
// Populating row 2 and adding it to the nested table
Cell nested3 = new Cell();
nested3.add("email");
nestedTable.addCell(nested3);
Cell nested4 = new Cell();
nested4.add("[email protected]");
nestedTable.addCell(nested4);
// Populating row 3 and adding it to the nested table
Cell nested5 = new Cell();
nested5.add("Address");
nestedTable.addCell(nested5);
Cell nested6 = new Cell();
nested6.add("Hyderabad");
nestedTable.addCell(nested6);
7 단계 : 셀에 중첩 된 표 추가
이제 위에서 만든 중첩 테이블을 상위 (컨테이너) 테이블의 셀에 추가합니다. add() 의 방법 Cell수업. 그리고 다음을 사용하여이 셀을 상위 테이블에 추가합니다.addCell() 의 방법 Table 아래와 같이 클래스.
contact.add(nestedTable);
table.addCell(contact);
8 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
9 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서의 테이블 (중첩 된 테이블) 셀에 테이블을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingNestedTable.pdf, 테이블을 추가하고 다른 테이블을 해당 셀 중 하나에 삽입 한 다음 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. AddNestedTable.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.Table;
public class a4AddNestedTablesPdf {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/addingNestedTable.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths1 = {150f, 150f};
Table table = new Table(pointColumnWidths1);
// Populating row 1 and adding it to the table
Cell cell1 = new Cell();
cell1.add("Name");
table.addCell(cell1);
Cell cell2 = new Cell();
cell2.add("Raju");
table.addCell(cell2);
// Populating row 2 and adding it to the table
Cell cell3 = new Cell();
cell3.add("Id");
table.addCell(cell3);
Cell cell4 = new Cell();
cell4.add("1001");
table.addCell(cell4);
// Populating row 3 and adding it to the table
Cell cell5 = new Cell();
cell5.add("Designation");
table.addCell(cell5);
Cell cell6 = new Cell();
cell6.add("Programmer");
table.addCell(cell6);
// Creating nested table for contact
float [] pointColumnWidths2 = {150f, 150f};
Table nestedTable = new Table(pointColumnWidths2);
// Populating row 1 and adding it to the nested table
Cell nested1 = new Cell();
nested1.add("Phone");
nestedTable.addCell(nested1);
Cell nested2 = new Cell();
nested2.add("9848022338");
nestedTable.addCell(nested2);
// Populating row 2 and adding it to the nested table
Cell nested3 = new Cell();
nested3.add("email");
nestedTable.addCell(nested3);
Cell nested4 = new Cell();
nested4.add("[email protected]");
nestedTable.addCell(nested4);
// Populating row 3 and adding it to the nested table
Cell nested5 = new Cell();
nested5.add("Address");
nestedTable.addCell(nested5);
Cell nested6 = new Cell();
nested6.add("Hyderabad");
nestedTable.addCell(nested6);
// Adding table to the cell
Cell cell7 = new Cell();
cell7.add("Contact");
table.addCell(cell7);
Cell cell8 = new Cell();
cell8.add(nestedTable);
table.addCell(cell8);
// Adding table to the document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Nested Table Added successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddNestedTable.java
java AddNestedTable
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Nested Table Added successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서의 표에 목록을 추가하는 방법을 알아 봅니다.
PDF의 표에 목록 추가
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument생성자에 대한 매개 변수로 객체. 그런 다음 문서에 테이블을 추가하려면 다음을 인스턴스화해야합니다.Table 클래스를 사용하여이 개체를 문서에 추가합니다. add() 방법.
추가하려면 list 테이블에 인스턴스화해야합니다. List 클래스 com.itextpdf.layout.element 포장하고 안으로 삽입하십시오 cell 개체를 사용하여 add() 의 방법 Cell 수업.
다음은 테이블의 셀에 목록을 추가하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF 용 문서 작성기를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingObjects.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지 c에 속합니다.om.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 아래와 같이 생성자에 위에서 생성 된 PdfWriter 객체를 전달하여 클래스.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 테이블 개체 만들기
그만큼 Table클래스는 행과 열로 정렬 된 셀로 채워진 2 차원 격자를 나타냅니다. 패키지에 속합니다.com.itextpdf.layout.element.
인스턴스화 Table 아래와 같이 클래스.
// Creating a table
float [] pointColumnWidths = {200F, 200F};
Table table = new Table(pointColumnWidths);
5 단계 : 셀 만들기
만들기 cell 개체를 인스턴스화하여 Cell 패키지 클래스 com.itextpdf.layout, 아래 그림과 같이.
// Adding cell to the table
Cell listCell = new Cell(); // Creating a cell
6 단계 : 목록 개체 만들기
셀을 만든 후 list 개체를 인스턴스화하여 List 패키지 클래스 com.itextpdf.layout.element. 인스턴스화하여 목록 항목을 만듭니다.ListItem 클래스를 만들고 생성 된 항목을 add() 의 방법 List 아래와 같이 클래스.
List list = new List();
ListItem item1 = new ListItem("JavaFX");
ListItem item2 = new ListItem("Java");
ListItem item3 = new ListItem("Java Servlets");
list.add(item1);
list.add(item2);
list.add(item3);
7 단계 : 표의 셀에 목록 추가
이제 위에서 만든 목록을 테이블의 셀에 추가합니다. add()Cell 클래스의 메서드. 그리고 다음을 사용하여이 셀을 테이블에 추가합니다.addCell() 의 방법 Table 아래와 같이 클래스.
listCell.add(list);
table.addCell(listCell);
8 단계 : 문서에 표 추가
추가 table 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding list to the document
document.add(table);
9 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서의 테이블 셀에 목록을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingObjects.pdf, 테이블을 추가하고, 셀 중 하나에 목록을 삽입하고, 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. AddingListsToTable.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Cell;
import com.itextpdf.layout.element.List;
import com.itextpdf.layout.element.ListItem;
import com.itextpdf.layout.element.Table;
import com.itextpdf.layout.property.TextAlignment;
public class AddingListsToTable {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String file = "C:/itextExamples/addingObjects.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a table
float [] pointColumnWidths = {300F, 300F};
Table table = new Table(pointColumnWidths);
// Adding row 1 to the table
Cell c1 = new Cell();
c1.add("Java Related Tutorials");
c1.setTextAlignment(TextAlignment.LEFT);
table.addCell(c1);
List list1 = new List();
ListItem item1 = new ListItem("JavaFX");
ListItem item2 = new ListItem("Java");
ListItem item3 = new ListItem("Java Servlets");
list1.add(item1);
list1.add(item2);
list1.add(item3);
Cell c2 = new Cell();
c2.add(list1);
c2.setTextAlignment(TextAlignment.LEFT);
table.addCell(c2);
// Adding row 2 to the table
Cell c3 = new Cell();
c3.add("No SQL Databases");
c3.setTextAlignment(TextAlignment.LEFT);
table.addCell(c3);
List list2 = new List();
list2.add(new ListItem("HBase"));
list2.add(new ListItem("Neo4j"));
list2.add(new ListItem("MongoDB"));
Cell c4 = new Cell();
c4.add(list2);
c4.setTextAlignment(TextAlignment.LEFT);
table.addCell(c4);
// Adding Table to document
doc.add(table);
// Closing the document
doc.close();
System.out.println("Lists added to table successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingListsToTable.java
java AddingListsToTable
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Lists added to table successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 이미지를 추가하는 방법을 알아 봅니다.
PDF에 이미지 추가
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument객체를 매개 변수로 생성자에 전달합니다. PDF에 이미지를 추가하려면 추가해야하는 이미지의 개체를 만들고add() 의 방법 Document 수업.
다음은 PDF 문서에 이미지를 추가하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/addingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document Document
document = new Document(pdfDoc);
4 단계 : 이미지 개체 만들기
만들려면 image 객체, 우선, 생성 ImageData 개체를 사용하여 create() 의 방법 ImageDataFactory수업. 이 메서드의 매개 변수로 아래와 같이 이미지의 경로를 나타내는 문자열 매개 변수를 전달합니다.
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
이제 인스턴스화 Image 클래스 com.itextpdf.layout.element꾸러미. 인스턴스화하는 동안 위에서 만든ImageData 아래와 같이 생성자에 대한 매개 변수로 객체
// Creating an Image object
Image img = new Image(data);
5 단계 : 문서에 이미지 추가
다음을 사용하여 이전 단계에서 만든 이미지 개체를 추가합니다. add() 의 방법 Document 아래와 같이 클래스.
// Adding image to the document
document.add(img);
6 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 이미지를 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.addingImage.pdf, 이미지를 추가하고 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름이있는 파일에 저장 AddingImage.java.
import com.itextpdf.io.image.ImageData;
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class AddingImage {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/addingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating an ImageData object
String imFile = "C:/itextExamples/logo.jpg";
ImageData data = ImageDataFactory.create(imFile);
// Creating an Image object
Image image = new Image(data);
// Adding image to the document
document.add(image);
// Closing the document
document.close();
System.out.println("Image added");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac AddingImage.java
java AddingImage
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Image added
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에서 이미지의 위치를 설정하는 방법을 살펴 봅니다.
이미지 위치 설정
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
pdf에 이미지를 추가하려면 추가해야하는 이미지의 개체를 만들고 추가합니다. add() 의 방법 Document수업. 방법을 사용하여 문서의 원하는 위치에 이미지를 삽입 할 수 있습니다.setFixedPosition() 의 Image 수업.
다음은 PDF 문서에서 이미지의 위치를 설정하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/positionOfImage.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 이미지 개체 만들기
이미지 개체를 만들려면 먼저 ImageData 개체를 사용하여 create() 의 방법 ImageDataFactory수업. 이 메서드의 매개 변수로 아래와 같이 이미지의 경로를 나타내는 문자열 매개 변수를 전달합니다.
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
이제 인스턴스화 Image 클래스 com.itextpdf.layout.element꾸러미. 인스턴스화하는 동안ImageData 아래와 같이 생성자에 대한 매개 변수로 객체
// Creating an Image object
Image img = new Image(data);
5 단계 : 이미지 위치 설정
PDF 문서에서 이미지 위치를 설정할 수 있습니다. setFixedPosition()Image의 방법. 아래 그림과 같이이 방법을 사용하여 이미지의 위치를 문서의 좌표 (100, 250)로 설정합니다.
// Setting the position of the image to the center of the page
image.setFixedPosition(100, 250);
6 단계 : 문서에 이미지 추가
이제 이전 단계에서 만든 이미지 개체를 추가합니다. add() 의 방법 Document 아래와 같이 클래스.
// Adding image to the document
document.add(img);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서의 원하는 위치에 이미지를 설정하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.positionOfImage.pdf, 이미지를 추가하고 페이지 중앙에 더 가깝게 설정 한 다음 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. SettingPosition.java.
import com.itextpdf.io.image.ImageData;
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class SettingPosition {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/EXAMPLES/itextExamples/3images/positionOfImage.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdfDoc);
// Creating an ImageData object
String imFile = "C:/EXAMPLES/itextExamples/3images/logo.jpg";
ImageData data = ImageDataFactory.create(imFile);
// Creating an Image object
Image image = new Image(data);
// Setting the position of the image to the center of the page
image.setFixedPosition(100, 250);
// Adding image to the document
document.add(image);
// Closing the document
document.close();
System.out.println("Image added");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac SettingPosition.java
java SettingPosition
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Image added
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서의 이미지 크기를 조정하는 방법을 알아 봅니다.
PDF에서 이미지 크기 조정
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PDF에 이미지를 추가하려면 추가해야하는 이미지의 개체를 만들고 add() 의 방법 Document수업. 다음을 사용하여 이미지 크기를 조정할 수 있습니다.setAutoScale() 방법.
다음은 PDF 문서에있는 이미지의 크기를 조정하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/autoScale.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 아래와 같이 생성자에 위에서 생성 된 PdfWriter 객체를 전달하여 클래스.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 이미지 개체 만들기
이미지 개체를 만들려면 먼저 ImageData 개체를 사용하여 create() 의 방법 ImageDataFactory수업. 이 메서드의 매개 변수로 아래와 같이 이미지의 경로를 나타내는 문자열 매개 변수를 전달합니다.
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
이제 인스턴스화 Image 클래스 com.itextpdf.layout.element꾸러미. 인스턴스화하는 동안ImageData 아래와 같이 생성자에 대한 매개 변수로 객체
// Creating an Image object
Image img = new Image(data);
5 단계 : 이미지 크기 조정
다음을 사용하여 이미지 크기를 조정할 수 있습니다. setAutoScale() 방법.
// Setting the position of the image to the center of the page
image.setFixedPosition(100, 250);
6 단계 : 문서에 이미지 추가
이제 image 이전 단계에서 만든 개체 add() 의 방법 Document 아래와 같이 클래스.
// Adding image to the document
document.add(img);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서의 문서 크기에 따라 이미지 크기를 조정하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.autoScale.pdf, 이미지를 추가하고, 페이지 크기에 따라 크기를 조정하고, 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름이있는 파일에 저장 SettingAutoScale.java.
import com.itextpdf.io.image.ImageData;
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class SettingAutoScale {
public static void main(String args[]) throws Exception{
// Creating a PdfWriter
String dest = "C:/itextExamples/positionOfImage.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdfDoc);
// Creating an ImageData object
String imFile = "C:/itextExamples/logo.jpg";
ImageData data = ImageDataFactory.create(imFile);
// Creating an Image object
Image image = new Image(data);
// Setting the position of the image to the center of the page
image.setFixedPosition(100,250);
// Adding image to the document
document.add(image);
// Closing the document
document.close();
System.out.println("Image Scaled");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac SettingAutoScale.java
java SettingAutoScale
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Image Scaled
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리에서 사용 가능한 기능을 사용하여 PDF 문서에 이미지를 삽입하는 방법과 해당 이미지를 회전하는 방법을 살펴 봅니다.
PDF에서 이미지 회전
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PDF에 이미지를 추가하려면 추가해야하는 이미지의 개체를 만들고 add() 의 방법 Document수업. 다음을 사용하여 이미지를 회전 할 수 있습니다.setRotationAngle() 방법.
다음은 PDF 문서에서 이미지를 회전하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/rotatingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 이미지 개체 만들기
이미지 개체를 만들려면 먼저 ImageData 개체를 사용하여 create()의 방법 ImageDataFactory수업. 이 메서드의 매개 변수로 아래와 같이 이미지의 경로를 나타내는 문자열 매개 변수를 전달합니다.
// Creating an ImageData object
String imageFile = "C:/itextExamples/javafxLogo.jpg";
ImageData data = ImageDataFactory.create(imageFile);
이제 인스턴스화 Image 클래스 com.itextpdf.layout.element꾸러미. 인스턴스화하는 동안ImageData object, 생성자에 대한 매개 변수로, 아래와 같이.
// Creating an Image object
Image img = new Image(data);
5 단계 : 이미지 회전
다음을 사용하여 이미지를 회전 할 수 있습니다. setRotationAngle()방법. 이 방법을 사용하려면 이미지를 회전하려는 회전 각도를 나타내는 정수를 전달해야합니다.
// Rotating the image
image.setRotationAngle(45);
6 단계 : 문서에 이미지 추가
이제 이전 단계에서 만든 이미지 개체를 add() 의 방법 Document 아래와 같이 클래스.
// Adding image to the document
document.add(img);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에서 주어진 각도로 이미지를 회전하는 방법을 보여줍니다.
이름을 가진 PDF 문서를 생성합니다. rotatingImage.pdf, 이미지를 추가하고 회전 한 후 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. RotatingImage.java.
import com.itextpdf.io.image.ImageData;
import com.itextpdf.io.image.ImageDataFactory;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Image;
public class RotatingImage {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/rotatingImage.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdfDoc);
// Creating an ImageData object
String imFile = "C:/itextExamples/logo.jpg";
ImageData data = ImageDataFactory.create(imFile);
// Creating an Image object
Image image = new Image(data);
// Rotating the image
image.setRotationAngle(45);
// Adding image to the document
document.add(image);
// Closing the document
document.close();
System.out.println("Image rotated");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac RotatingImage.java
java RotatingImage
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Image Rotated
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 텍스트 주석을 추가하는 방법을 알아 봅니다.
PDF에서 텍스트 주석 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PDF 문서에서 텍스트 주석을 사용하려면 다음 개체를 만들어야합니다. PdfTextAnnotation 클래스를 추가하고 PdfPage.
다음은 PDF 문서에서 텍스트 주석을 사용하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/textAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
인스턴스화 PdfDocument 클래스를 전달하여 PdfWriter 객체를 생성자에 추가합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfAnnotation 개체 만들기
그만큼 PdfAnnotation 패키지 클래스 com.itextpdf.kernel.pdf.annot 모든 주석의 수퍼 클래스를 나타냅니다.
파생 클래스 중 PdfTextAnnotation클래스는 텍스트 주석을 나타냅니다. 아래와 같이이 클래스의 개체를 만듭니다.
// Creating PdfAnnotation
Rectangle rect = new Rectangle(20, 800, 0, 0);
PdfAnnotation ann = new PdfTextAnnotation(rect);
5 단계 : 주석 색상 설정
다음을 사용하여 주석에 색상을 설정합니다. setColor() 의 방법 PdfAnnotation수업. 이 메서드에color 주석의 색상을 매개 변수로 나타내는 객체입니다.
// Setting color to the annotation
ann.setColor(Color.GREEN);
6 단계 : 주석의 제목 및 내용 설정
다음을 사용하여 주석의 제목과 내용을 설정합니다. setTitle() 과 setContents() 의 방법 PdfAnnotation 아래에 표시된대로 각각 클래스.
// Setting title to the annotation
ann.setTitle(new PdfString("Hello"));
// Setting contents of the annotation
ann.setContents("Hi welcome to Tutorialspoint.");
7 단계 : 페이지에 주석 추가
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() PdfDocument 클래스의 메서드를 사용하고 addAnnotation() 의 방법 PdfPage 아래와 같이 클래스.
// Creating a new page PdfPage page =
pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 텍스트 주석을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.textAnnotation.pdf, 텍스트 주석을 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. TextAnnotation.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.annot.PdfAnnotation;
import com.itextpdf.kernel.pdf.annot.PdfTextAnnotation;
import com.itextpdf.layout.Document;
public class TextAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/textAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating PdfTextAnnotation object
Rectangle rect = new Rectangle(20, 800, 0, 0);
PdfAnnotation ann = new PdfTextAnnotation(rect);
// Setting color to the annotation
ann.setColor(Color.GREEN);
// Setting title to the annotation
ann.setTitle(new PdfString("Hello"));
// Setting contents of the annotation
ann.setContents("Hi welcome to Tutorialspoint.");
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
// Closing the document
document.close();
System.out.println("Annotation added successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac TextAnnotation.java
java TextAnnotation
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Annotation added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 링크 주석을 추가하는 방법을 알아 봅니다.
PDF에서 링크 주석 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PDF 문서에서 텍스트 주석을 사용하려면 PdfTextAnnotation 클래스의 개체를 만들고이를 PdfPage에 추가해야합니다.
다음은 PDF 문서에서 텍스트 주석을 사용하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
인스턴스화 PdfWriter 아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 클래스.
// Creating a PdfWriter
String dest = "C:/itextExamples/linkAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
다음을 전달하여 PdfDocument 클래스를 인스턴스화합니다. PdfWriter 객체를 생성자에 추가합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
인스턴스화 Document 아래와 같이 이전 단계에서 생성 한 PdfDocument 클래스의 객체를 전달하여
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfAnnotation 개체 만들기
그만큼 PdfAnnotation 패키지 클래스 com.itextpdf.kernel.pdf.annot 모든 주석의 수퍼 클래스를 나타냅니다.
파생 클래스 중 PdfLinkAnnotation클래스는 링크 주석을 나타냅니다. 아래와 같이이 클래스의 개체를 만듭니다.
// Creating a PdfLinkAnnotation object
Rectangle rect = new Rectangle(0, 0);
PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect);
5 단계 : 주석 작업 설정
다음을 사용하여 주석에 대한 작업을 설정합니다. setAction() 의 방법 PdfLinkAnnotation 아래와 같이 클래스.
// Setting action of the annotation
PdfAction action = PdfAction.createURI("http: // www.tutorialspoint.com/");
annotation.setAction(action);
6 단계 : 링크 만들기
인스턴스화하여 링크를 만듭니다. Link 패키지 클래스 com.itextpdf.layout.element, 아래 그림과 같이.
// Creating a link
Link link = new Link("Click here", annotation);
7 단계 : 단락에 링크 주석 추가
인스턴스화하여 새 단락을 만듭니다. Paragraph 클래스를 만들고 이전 단계에서 만든 링크를 add() 이 클래스의 메서드는 아래와 같습니다.
// Creating a paragraph
Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");
// Adding link to paragraph
paragraph.add(link.setUnderline());
8 단계 : 문서에 단락 추가
다음을 사용하여 문서에 단락을 추가합니다. add() 의 방법 Document 아래와 같이 클래스.
// Adding paragraph to document
document.add(paragraph);
9 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 링크 주석을 추가하는 방법을 보여줍니다.
이름을 가진 PDF 문서를 생성합니다. linkAnnotation.pdf, 링크 주석을 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. LinkAnnotation.java.
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.action.PdfAction;
import com.itextpdf.kernel.pdf.annot.PdfLinkAnnotation;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Link;
import com.itextpdf.layout.element.Paragraph;
public class LinkAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/linkAnnotation.pdf";
PdfWriter writer = new
PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating a PdfLinkAnnotation object
Rectangle rect = new Rectangle(0, 0);
PdfLinkAnnotation annotation = new PdfLinkAnnotation(rect);
// Setting action of the annotation
PdfAction action = PdfAction.createURI("http:// www.tutorialspoint.com/");
annotation.setAction(action);
// Creating a link
Link link = new Link("Click here", annotation);
// Creating a paragraph
Paragraph paragraph = new Paragraph("Hi welcome to Tutorialspoint ");
// Adding link to paragraph
paragraph.add(link.setUnderline());
// Adding paragraph to document
document.add(paragraph);
// Closing the document
document.close();
System.out.println("Annotation added successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac LinkAnnotation.java
java LinkAnnotation
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Annotation added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 줄 주석을 추가하는 방법을 알아 봅니다.
PDF에서 선 주석 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 객체를 매개 변수로 생성자에 전달합니다.
PDF 문서에서 텍스트 주석을 사용하려면 다음 개체를 만들어야합니다. PdfTextAnnotation 클래스를 추가하고 PdfPage.
다음은 PDF 문서에서 텍스트 주석을 사용하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 PDF를 만들어야하는 경로를 나타내는 문자열 값을 생성자에 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/lineAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDFDocument를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 객체가 생성되면 해당 클래스에서 제공하는 각 메소드를 사용하여 페이지, 글꼴, 파일 첨부, 이벤트 핸들러와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
클래스의 객체를 전달하여 Document 클래스를 인스턴스화합니다. PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfAnnotation 개체 만들기
그만큼 PdfAnnotation 패키지 클래스 com.itextpdf.kernel.pdf.annot represent는 모든 주석의 수퍼 클래스입니다.
파생 클래스 중 PdfLineAnnotation클래스는 라인 주석을 나타냅니다. 아래와 같이이 클래스의 개체를 만듭니다.
// Creating PdfAnnotation
Rectangle rect = new Rectangle(20, 800, 0, 0);
PdfAnnotation annotation = new PdfLineAnnotation(rect);
5 단계 : 주석 색상 설정
다음을 사용하여 주석에 색상을 설정합니다. setColor() 의 방법 PdfAnnotation수업. 이 메서드에 주석의 색상을 나타내는 색상 객체를 매개 변수로 전달합니다.
// Setting color to the annotation
annotation.setColor(Color.BLUE);
6 단계 : 주석의 제목 및 내용 설정
다음을 사용하여 주석의 제목과 내용을 설정합니다. setTitle() 과 setContents() 의 방법 PdfAnnotation 아래에 표시된대로 각각 클래스.
// Setting title to the PdfLineAnnotation
annotation.setTitle(new PdfString("iText"));
// Setting contents of the PdfLineAnnotation
annotation.setContents("Hi welcome to Tutorialspoint");
7 단계 : 페이지에 주석 추가
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument 아래와 같이 PdfPage 클래스의 addAnnotation () 메서드를 사용하여 위에서 생성 한 주석을 추가합니다.
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(annotation);
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 줄 주석을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.lineAnnotation.pdf, 라인 주석을 추가하고 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름이있는 파일에 저장 LineAnnotation.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.annot.PdfAnnotation;
import com.itextpdf.kernel.pdf.annot.PdfLineAnnotation;
import com.itextpdf.layout.Document;
public class LineAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/lineAnnotations.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document
Document document = new Document(pdf);
// Creating a PdfPage
PdfPage page = pdf.addNewPage();
// creating PdfLineAnnotation object
Rectangle rect = new Rectangle(0, 0);
float[] floatArray = new float[]{
20, 790, page.getPageSize().getWidth() - 20, 790
};
PdfAnnotation annotation = new PdfLineAnnotation(rect, floatArray);
// Setting color of the PdfLineAnnotation
annotation.setColor(Color.BLUE);
// Setting title to the PdfLineAnnotation
annotation.setTitle(new PdfString("iText"));
// Setting contents of the PdfLineAnnotation
annotation.setContents("Hi welcome to Tutorialspoint");
// Adding annotation to the page
page.addAnnotation(annotation);
// Closing the document
document.close();
System.out.println("Annotation added successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac LineAnnotation.java
java LineAnnotation
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Annotation added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 텍스트 마크 업 주석을 추가하는 방법을 알아 봅니다.
PDF에서 마크 업 주석 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument생성자에 대한 매개 변수로 객체. PDF 문서에서 텍스트 주석을 사용하려면 다음 개체를 만들어야합니다.PdfTextAnnotation 클래스를 추가하고 PdfPage.
다음은 PDF 문서에서 텍스트 주석을 사용하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/markupAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 클래스의 객체를받습니다.PdfDocument.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfAnnotation 개체 만들기
그만큼 PdfAnnotation 패키지 클래스 com.itextpdf.kernel.pdf.annot 모든 주석의 수퍼 클래스를 나타냅니다.
파생 클래스 중 PdfTextMarkupAnnotation클래스는 텍스트 마크 업 주석을 나타냅니다. 아래와 같이이 클래스의 개체를 만듭니다.
// Creating a PdfTextMarkupAnnotation object
Rectangle rect = new Rectangle(105, 790, 64, 10);
float[] floatArray = new float[]{169, 790, 105, 790, 169, 800, 105, 800};
PdfAnnotation annotation = PdfTextMarkupAnnotation.createHighLight(rect,floatArray);
5 단계 : 주석 색상 설정
다음을 사용하여 주석에 색상을 설정합니다. setColor() 의 방법 PdfAnnotation수업. 이 메서드에color 매개 변수로 주석의.
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
6 단계 : 주석의 제목 및 내용 설정
다음을 사용하여 주석의 제목과 내용을 설정합니다. setTitle() 과 setContents() 의 방법 PdfAnnotation 클래스 각각.
// Setting title to the annotation
annotation.setTitle(new PdfString("Hello!"));
// Setting contents to the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
7 단계 : 페이지에 주석 추가
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument 클래스를 만들고 위에서 만든 주석을 addAnnotation() 아래와 같이 PdfPage 클래스의 메서드입니다.
// Creating a new Pdfpage
PdfPage pdfPage = pdfDoc.addNewPage();
// Adding annotation to a page in a PDF
pdfPage.addAnnotation(annotation);
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 텍스트 마크 업 주석을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.markupAnnotation.pdf, 텍스트 마크 업 주석을 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. MarkupAnnotation.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.annot.PdfAnnotation;
import com.itextpdf.kernel.pdf.annot.PdfTextMarkupAnnotation;
import com.itextpdf.layout.Document;
public class MarkupAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfDocument object
String file = "C:/itextExamples/markupAnnotation.pdf";
PdfDocument pdfDoc = new PdfDocument(new PdfWriter(file));
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a PdfTextMarkupAnnotation object
Rectangle rect = new Rectangle(105, 790, 64, 10);
float[] floatArray = new float[]{169, 790, 105, 790, 169, 800, 105, 800};
PdfAnnotation annotation =
PdfTextMarkupAnnotation.createHighLight(rect,floatArray);
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
// Setting title to the annotation
annotation.setTitle(new PdfString("Hello!"));
// Setting contents to the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
// Creating a new Pdfpage
PdfPage pdfPage = pdfDoc.addNewPage();
// Adding annotation to a page in a PDF
pdfPage.addAnnotation(annotation);
// Closing the document
doc.close();
System.out.println("Annotation added successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac MarkupAnnotation.java
java MarkupAnnotation
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Annotation added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 원 주석을 추가하는 방법을 살펴 봅니다.
PDF에서 원 주석 만들기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PDF 문서에서 텍스트 주석을 사용하려면 PdfTextAnnotation 클래스의 객체를 생성하고이를 Pdfpage.
다음은 PDF 문서에서 텍스트 주석을 사용하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
인스턴스화 PdfWriter 아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 클래스.
// Creating a PdfWriter
String dest = "C:/itextExamples/circleAnnotation.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfAnnotation 개체 만들기
그만큼 PdfAnnotation 패키지 클래스 com.itextpdf.kernel.pdf.annot 모든 주석의 수퍼 클래스를 나타냅니다.
파생 클래스 중 PdfCircleAnnotation클래스는 원 주석을 나타냅니다. 아래와 같이이 클래스의 개체를 만듭니다.
// Creating a PdfCircleAnnotation object Rectangle
rect = new Rectangle(150, 770, 50, 50);
PdfAnnotation annotation = new PdfCircleAnnotation(rect);
5 단계 : 주석 색상 설정
다음을 사용하여 주석에 색상을 설정합니다. setColor() 의 방법 PdfAnnotation수업. 이 메서드에 주석의 색상을 나타내는 색상 객체를 매개 변수로 전달합니다.
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
6 단계 : 주석의 제목 및 내용 설정
다음을 사용하여 주석의 제목과 내용을 설정합니다. setTitle() 과 setContents() 의 방법 PdfAnnotation 클래스 각각.
// Setting title to the annotation
annotation.setTitle(new PdfString("circle annotation"));
// Setting contents of the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
7 단계 : 페이지에 주석 추가
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument 클래스를 만들고 위에서 만든 주석을 addAnnotation() 아래와 같이 PdfPage 클래스의 메서드입니다.
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(ann);
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 원 주석을 추가하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.circleAnnotation.pdf, 원 주석을 추가하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. PdfCircleAnnotation.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfString;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.annot.PdfAnnotation;
import com.itextpdf.kernel.pdf.annot.PdfCircleAnnotation;
import com.itextpdf.layout.Document;
public class CircleAnnotation {
public static void main(String args[]) throws Exception {
// Creating a PdfDocument object
String file = "C:/itextExamples// circleAnnotation.pdf";
PdfDocument pdf = new PdfDocument(new PdfWriter(file));
// Creating a Document object
Document doc = new Document(pdf);
// Creating a PdfCircleAnnotation object
Rectangle rect = new Rectangle(150, 770, 50, 50);
PdfAnnotation annotation = new PdfCircleAnnotation(rect);
// Setting color to the annotation
annotation.setColor(Color.YELLOW);
// Setting title to the annotation
annotation.setTitle(new PdfString("circle annotation"));
// Setting contents of the annotation
annotation.setContents(new PdfString("Hi welcome to Tutorialspoint"));
// Creating a new page
PdfPage page = pdf.addNewPage();
// Adding annotation to a page in a PDF
page.addAnnotation(annotation);
// Closing the document
doc.close();
System.out.println("Annotation added successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac PdfCircleAnnotation.java
java PdfCircleAnnotation
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Annotation added successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 호를 그리는 방법을 살펴 봅니다.
PDF에 호 그리기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PdfDocument에 호를 그리려면 PdfCanvas 패키지 클래스 com.itextpdf.kernel.pdf.canvas를 사용하여 호를 만듭니다. arc() 이 클래스의 메서드.
다음은 PDF 문서에 호를 그리는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingArc.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfCanvas 개체 만들기
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument 수업.
인스턴스화 PdfCanvas 패키지의 대상 com.itextpdf.kernel.pdf.canvas 위의 생성을 전달하여 PdfPage 아래와 같이이 클래스의 생성자에 개체를 추가합니다.
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
5 단계 : 호 그리기
다음을 사용하여 호를 그립니다. arc() 의 방법 Canvas 클래스를 작성하고 fill() 방법은 아래와 같습니다.
// Drawing an arc
canvas.arc(50, 50, 300, 545, 0, 360);
// Filling the arc
canvas.fill();
6 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에서 호를 그리는 방법을 보여줍니다.
이름을 가진 PDF 문서를 생성합니다. drawingArc.pdf, 그 안에 호를 그리고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. DrawingArc.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.layout.Document;
public class DrawingArc {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingArc.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
// Drawing an arc
canvas.arc(50, 50, 300, 545, 0, 360);
// Filling the arc
canvas.fill();
// Closing the document
doc.close();
System.out.println("Object drawn on pdf successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac DrawingArc.java
java DrawingArc
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Object drawn on pdf successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 선을 그리는 방법을 살펴 봅니다.
PDF에 선 그리기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 객체를 매개 변수로 생성자에 전달합니다.
PdfDocument에 선을 그리려면 PdfCanvas 패키지 클래스 com.itextpdf.kernel.pdf.canvas 다음을 사용하여 선을 만듭니다. moveTo() 과 lineTO() 이 클래스의 메서드.
다음은 pdf 문서에 선을 그리는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingLine.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 위에서 만든 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfCanvas 개체 만들기
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument 수업.
인스턴스화 PdfCanvas 패키지의 대상 com.itextpdf.kernel.pdf.canvas 위의 생성을 전달하여 PdfPage 아래와 같이이 클래스의 생성자에 개체를 추가합니다.
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
5 단계 : 선 그리기
다음을 사용하여 선의 시작점을 설정합니다. moveTO() 의 방법 Canvas 아래와 같이 클래스.
// Initial point of the line
canvas.moveTo(100, 300);
이제이 점에서 다른 점으로 선을 그립니다. lineTo() 방법은 아래와 같습니다.
// Drawing the line
canvas.lineTo(500, 300);
6 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 문서에 선을 그리는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.drawingLine.pdf, 그 안에 호를 그리고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름이있는 파일에 저장 DrawingLine.java.
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.layout.Document;
public class DrawingLine {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingLine.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
// Initial point of the line
canvas.moveTo(100, 300);
// Drawing the line
canvas.lineTo(500, 300);
// Closing the path stroke
canvas.closePathStroke();
// Closing the document
doc.close();
System.out.println("Object drawn on pdf successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac DrawingLine.java
java DrawingLine
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Object drawn on pdf successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에 원을 그리는 방법을 살펴 봅니다.
PDF에 원 그리기
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
PdfDocument에 원을 그리려면 PdfCanvas 패키지 클래스 com.itextpdf.kernel.pdf.canvas 및 호출 circle() 이 클래스의 메서드.
다음은 PDF 문서에 원을 그리는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingCircle.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : PdfCanvas 개체 만들기
새로 만들기 PdfPage 클래스를 사용하여 addNewPage() 의 방법 PdfDocument수업. 인스턴스화PdfCanvas 패키지의 대상 com.itextpdf.kernel.pdf.canvas 통과하여 PdfPage 아래와 같이이 클래스의 생성자에 개체를 추가합니다.
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
5 단계 색상 설정
사용하여 원의 색상을 설정 setColor() 의 방법 Canvas 아래와 같이 클래스.
// Setting color to the circle
Color color = Color.GREEN;
canvas.setColor(color, true);
6 단계 : 원 그리기
다음을 호출하여 원을 그립니다. circle() 의 방법 Canvas, 아래 그림과 같이.
// creating a circle
canvas.circle(300, 400, 200);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 pdf 문서에 원을 그리는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.drawingCircle.pdf, 그 안에 원을 그리고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. DrawingCircle.java.
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.layout.Document;
public class DrawingCircle {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter
String dest = "C:/itextExamples/drawingCircle.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdfDoc = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdfDoc);
// Creating a new page
PdfPage pdfPage = pdfDoc.addNewPage();
// Creating a PdfCanvas object
PdfCanvas canvas = new PdfCanvas(pdfPage);
// Setting color to the circle
Color color = Color.GREEN;
canvas.setColor(color, true);
// creating a circle
canvas.circle(300, 400, 200);
// Filling the circle
canvas.fill();
// Closing the document
doc.close();
System.out.println("Object drawn on pdf successfully");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac DrawingCircle.java
java DrawingCircle
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Object drawn on pdf successfully
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서의 텍스트에 색상과 글꼴을 설정하는 방법을 살펴 봅니다.
PDF에서 텍스트 글꼴 설정
인스턴스화하여 빈 PDF 문서를 만들 수 있습니다. Document수업. 이 클래스를 인스턴스화하는 동안PdfDocument 생성자에 대한 매개 변수로 객체.
문서에 단락을 추가하려면 다음을 인스턴스화해야합니다. Paragraph 클래스를 사용하여이 개체를 문서에 추가합니다. add()방법. 방법을 사용하여 텍스트에 색상과 글꼴을 설정할 수 있습니다.setFontColor() 과 setFont() 각기.
다음은 pdf 문서의 텍스트에 색상 및 글꼴을 설정하는 단계입니다.
1 단계 : PdfWriter 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter
String dest = "C:/itextExamples/fonts.pdf";
PdfWriter writer = new PdfWriter(dest);
이 유형의 객체가 PdfDocument (클래스)에 전달되면이 문서에 추가 된 모든 요소가 지정된 파일에 기록됩니다.
2 단계 : PdfDocument 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
아래와 같이 PdfWriter 개체를 생성자에 전달하여 PdfDocument 클래스를 인스턴스화합니다.
// Creating a PdfDocument
PdfDocument pdfDoc = new PdfDocument(writer);
PdfDocument 개체가 생성되면 해당 클래스에서 제공하는 각 메서드를 사용하여 페이지, 글꼴, 파일 첨부 및 이벤트 처리기와 같은 다양한 요소를 추가 할 수 있습니다.
3 단계 : 문서 클래스 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
클래스의 객체를 전달하여 Document 클래스를 인스턴스화합니다. PdfDocument 아래와 같이 이전 단계에서 생성되었습니다.
// Creating a Document
Document document = new Document(pdfDoc);
4 단계 : 텍스트 생성
인스턴스화하여 텍스트를 만듭니다. Text 패키지 클래스 com.itextpdf.layout.element 아래 그림과 같이.
// Creating text object
Text text = new Text("Tutorialspoint");
5 단계 : 글꼴 및 색상을 텍스트로 설정
만들기 PdfFont 개체를 사용하여 createFont() 수업 방법 PdfFontFactory 패키지의 com.itextpdf.kernel.font 아래 그림과 같이
// Setting font of the text PdfFont
font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD);
이제 다음을 사용하여 글꼴을 텍스트로 설정합니다. setFont() 의 방법 Text이 메서드에 클래스. 통과PdfFont 아래와 같이 매개 변수로 개체.
text1.setFont(font);
텍스트에 색상을 설정하려면 setFontColor() 아래와 같이 Text 클래스의 메서드.
// Setting font color
text.setFontColor(Color.GREEN);
6 단계 : 단락에 텍스트 추가
만들기 Paragraph 클래스 개체를 사용하여 위에서 만든 텍스트를 추가합니다. add() 방법은 아래와 같습니다.
// Creating Paragraph
Paragraph paragraph = new Paragraph();
// Adding text to the paragraph
paragraph.add(text);
7 단계 : 문서에 단락 추가
다음을 사용하여 문서에 단락을 추가합니다. add() 의 방법 Document 아래와 같이 클래스.
doc.add(paragraph1)
8 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF의 텍스트에 색상 및 글꼴을 설정하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.fonts.pdf, 텍스트 서식을 지정하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. FormatingTheText.java.
import com.itextpdf.io.font.FontConstants;
import com.itextpdf.kernel.color.Color;
import com.itextpdf.kernel.font.PdfFontFactory;
import com.itextpdf.kernel.font.PdfFont;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.layout.Document;
import com.itextpdf.layout.element.Paragraph;
import com.itextpdf.layout.element.Text;
public class FormatingTheText {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/fonts.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfDocument object
PdfDocument pdf = new PdfDocument(writer);
// Creating a Document object
Document doc = new Document(pdf);
// Creating text object
Text text1 = new Text("Tutorialspoint");
// Setting font of the text
PdfFont font = PdfFontFactory.createFont(FontConstants.HELVETICA_BOLD);
text1.setFont(font);
// Setting font color
text1.setFontColor(Color.GREEN);
// Creating text object
Text text2 = new Text("Simply Easy Learning");
text2.setFont(PdfFontFactory.createFont(FontConstants.HELVETICA));
// Setting font color
text2.setFontColor(Color.BLUE);
// Creating Paragraph
Paragraph paragraph1 = new Paragraph();
// Adding text1 to the paragraph
paragraph1.add(text1);
paragraph1.add(text2);
// Adding paragraphs to the document
doc.add(paragraph1);
doc.close();
System.out.println("Text added to pdf ..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac FormatingTheText.java
java FormatingTheText
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
Text added to pdf ..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
이 장에서는 iText 라이브러리를 사용하여 PDF 문서에서 이미지 크기를 조정하는 방법을 알아 봅니다.
PDF에서 콘텐츠 축소
다음은 iText 라이브러리를 사용하여 PDF 페이지의 내용을 축소하는 단계입니다.
1 단계 : PdfWriter 및 PdfReader 개체 만들기
그만큼 PdfWriter클래스는 PDF의 DocWriter를 나타냅니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스의 생성자는 PDF가 생성 될 파일의 경로를 나타내는 문자열을받습니다.
아래와 같이 생성자에 문자열 값 (PDF를 만들어야하는 경로를 나타냄)을 전달하여 PdfWriter 클래스를 인스턴스화합니다.
// Creating a PdfWriter object
String dest = "C:/itextExamples/shrinking.pdf";
PdfWriter writer = new PdfWriter(dest);
기존 PDF에서 데이터를 읽으려면 PdfReader 아래와 같이 개체.
// Creating a PdfReader
String src = "C:/itextExamples/pdfWithImage.pdf";
PdfReader reader = new PdfReader(src);
2 단계 : PdfDocument 개체 만들기
그만큼 PdfDocumentclass는 iText에서 PDF 문서를 나타내는 클래스입니다. 이 클래스는 패키지에 속합니다.com.itextpdf.kernel.pdf. 이 클래스를 인스턴스화하려면 (쓰기 모드에서) 클래스의 객체를 전달해야합니다.PdfWriter 생성자에.
소스 및 대상 PDF 문서를 PdfWriter 과 PdfReader 아래와 같이 생성자에 객체를 추가합니다.
// Creating a PdfDocument objects
PdfDocument destpdf = new PdfDocument(writer);
PdfDocument srcPdf = new PdfDocument(reader);
3 단계 : 기존 PDF에서 페이지 열기
다음을 사용하여 소스 PDF에서 페이지 가져 오기 getPage() 의 방법 PdfPage수업. 이 개체를 사용하여 아래와 같이 원본 문서의 페이지 크기를 가져옵니다.
// Opening a page from the existing PDF
PdfPage origPage = srcPdf.getPage(1);
// Getting the page size
Rectangle orig = origPage.getPageSizeWithRotation();
4 단계 : 소스 pdf의 내용 축소
사용 getScaleInstance() 의 방법 AffineTransform 클래스의 경우 아래와 같이 소스 문서의 페이지 내용을 축소합니다.
// Shrink original page content using transformation matrix
AffineTransform transformationMatrix = AffineTransform.getScaleInstance(
page.getPageSize().getWidth()/ orig.getWidth()/2,
page.getPageSize().getHeight()/ orig.getHeight()/2);
5 단계 : 페이지 복사
연결 affine transform matrix, 이전 단계에서 생성 된 canvas 아래와 같이 대상 PDF 문서의 개체입니다.
// Concatenating the affine transform matrix to the current matrix
PdfCanvas canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
이제 페이지 사본을 canvas 아래와 같이 대상 PDF의 개체를 원본 문서에 추가합니다.
// Add the object to the canvas
PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);
canvas.addXObject(pageCopy, 0, 0);
6 단계 : Document 개체 만들기
그만큼 Document 패키지 클래스 com.itextpdf.layout자급 자족 PDF를 만드는 동안 루트 요소입니다. 이 클래스의 생성자 중 하나는 PdfDocument 클래스의 개체를받습니다.
인스턴스화 Document 클래스의 객체를 전달하여 클래스 PdfDocument, 아래 그림과 같이.
// Creating a Document
Document document = new Document(destpdf);
7 단계 : 문서 닫기
다음을 사용하여 문서를 닫습니다. close() 의 방법 Document 아래와 같이 클래스.
// Closing the document
document.close();
예
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 페이지의 컨텐츠를 축소하는 방법을 보여줍니다. 이름이있는 PDF 문서를 생성합니다.shrinkingPDF.pdf, pdf의 이미지를 축소하고 경로에 저장합니다. C:/itextExamples/
이 코드를 이름이있는 파일에 저장 ShrinkingPDF.java.
import com.itextpdf.kernel.geom.AffineTransform;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;
import com.itextpdf.layout.Document;
public class ShrinkPDF {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/shrinking.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfReader
String src = "C:/itextExamples/pdfWithImage.pdf";
PdfReader reader = new PdfReader(src);
// Creating a PdfDocument objects
PdfDocument destpdf = new PdfDocument(writer);
PdfDocument srcPdf = new PdfDocument(reader);
// Opening a page from the existing PDF
PdfPage origPage = srcPdf.getPage(1);
// Getting the page size
Rectangle orig = origPage.getPageSizeWithRotation();
// Adding a page to destination Pdf
PdfPage page = destpdf.addNewPage();
// Scaling the image in a Pdf page
AffineTransform transformationMatrix = AffineTransform.getScaleInstance(
page.getPageSize().getWidth()/orig.getWidth()/2,
page.getPageSize().getHeight()/ orig.getHeight()/2);
// Shrink original page content using transformation matrix
PdfCanvas canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
// Add the object to the canvas
PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);
canvas.addXObject(pageCopy, 0, 0);
// Creating a Document object
Document doc = new Document(destpdf);
// Closing the document
doc.close();
System.out.println("Table created successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac ShrinkingPDF.java
java ShrinkingPDF
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
Table created successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 페이지의 컨텐츠를 다른 페이지로 타일링하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.tilingPdfPages.pdf 경로에 저장합니다. C:/itextExamples/.
이 코드를 이름으로 파일에 저장하십시오. TilingPDFPages.java.
import com.itextpdf.kernel.geom.AffineTransform;
import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;
public class TilingPDFPages {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/tilingPdfPages.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfReader
String src = "C:/itextExamples/pdfWithImage.pdf";
PdfReader reader = new PdfReader(src);
// Creating a PdfDocument objects
PdfDocument destpdf = new PdfDocument(writer);
PdfDocument srcPdf = new PdfDocument(reader);
// Opening a page from the existing PDF
PdfPage origPage = srcPdf.getPage(1);
// Getting the page size
Rectangle orig = origPage.getPageSizeWithRotation();
// Getting the size of the page
PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);
// Tile size
Rectangle tileSize = PageSize.A4.rotate();
AffineTransform transformationMatrix =
AffineTransform.getScaleInstance(tileSize.getWidth() / orig.getWidth() *
2f, tileSize.getHeight() / orig.getHeight() * 2f);
// The first tile
PdfPage page =
destpdf.addNewPage(PageSize.A4.rotate());
PdfCanvas canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
canvas.addXObject(pageCopy, 0, -orig.getHeight() / 2f);
// The second tile
page = destpdf.addNewPage(PageSize.A4.rotate());
canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
canvas.addXObject(pageCopy, -orig.getWidth() / 2f, -orig.getHeight() / 2f);
// The third tile
page = destpdf.addNewPage(PageSize.A4.rotate());
canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
canvas.addXObject(pageCopy, 0, 0);
// The fourth tile
page = destpdf.addNewPage(PageSize.A4.rotate());
canvas = new PdfCanvas(page);
canvas.concatMatrix(transformationMatrix);
canvas.addXObject(pageCopy, -orig.getWidth() / 2f, 0);
// closing the documents
destpdf.close();
srcPdf.close();
System.out.println("PDF created successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac TilingPDFPages.java
java TilingPDFPages
실행시 위의 프로그램은 PDF 문서를 생성하고 다음 메시지를 표시합니다.
PDF created successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.
다음 Java 프로그램은 iText 라이브러리를 사용하여 PDF 페이지에서 N-up을 수행하는 방법을 보여줍니다. 이름을 가진 PDF 문서를 생성합니다.nUppingPDF.pdf 경로에 저장합니다. C:/itextExamples/
이 코드를 이름으로 파일에 저장하십시오. NUppingPDF.java.
import com.itextpdf.kernel.geom.AffineTransform;
import com.itextpdf.kernel.geom.PageSize;
import com.itextpdf.kernel.geom.Rectangle;
import com.itextpdf.kernel.pdf.PdfDocument;
import com.itextpdf.kernel.pdf.PdfPage;
import com.itextpdf.kernel.pdf.PdfReader;
import com.itextpdf.kernel.pdf.PdfWriter;
import com.itextpdf.kernel.pdf.canvas.PdfCanvas;
import com.itextpdf.kernel.pdf.xobject.PdfFormXObject;
public class NUppingPDF {
public static void main(String args[]) throws Exception {
// Creating a PdfWriter object
String dest = "C:/itextExamples/nUppingPDF.pdf";
PdfWriter writer = new PdfWriter(dest);
// Creating a PdfReader
String src = "C:/itextExamples/pdfWithImage.pdf";
PdfReader reader = new PdfReader(src);
// Creating a PdfDocument objects
PdfDocument destpdf = new PdfDocument(writer);
PdfDocument srcPdf = new PdfDocument(reader);
// Opening a page from the existing PDF
PdfPage origPage = srcPdf.getPage(1);
Rectangle orig = origPage.getPageSize();
PdfFormXObject pageCopy = origPage.copyAsFormXObject(destpdf);
// N-up page
PageSize nUpPageSize = PageSize.A4.rotate();
PdfPage page = destpdf.addNewPage(nUpPageSize);
PdfCanvas canvas = new PdfCanvas(page);
// Scale page
AffineTransform transformationMatrix = AffineTransform.getScaleInstance(
nUpPageSize.getWidth() / orig.getWidth() /
2f, nUpPageSize.getHeight() / orig.getHeight() / 2f);
canvas.concatMatrix(transformationMatrix);
// Add pages to N-up page
canvas.addXObject(pageCopy, 0, orig.getHeight());
canvas.addXObject(pageCopy, orig.getWidth(), orig.getHeight());
canvas.addXObject(pageCopy, 0, 0);
canvas.addXObject(pageCopy, orig.getWidth(), 0);
// closing the documents
destpdf.close();
srcPdf.close();
System.out.println("PDF created successfully..");
}
}
다음 명령을 사용하여 명령 프롬프트에서 저장된 Java 파일을 컴파일하고 실행합니다.
javac NUppingPDF.java
java NUppingPDF
실행시 위의 프로그램은 다음 메시지를 표시하는 PDF 문서를 생성합니다.
PDF created successfully..
지정된 경로를 확인하면 아래와 같이 생성 된 PDF 문서를 찾을 수 있습니다.