#37 java: itext api ex
This commit is contained in:
BIN
java/api/NanumGothicLight.ttf
Normal file
BIN
java/api/NanumGothicLight.ttf
Normal file
Binary file not shown.
BIN
java/api/book_info.pdf
Normal file
BIN
java/api/book_info.pdf
Normal file
Binary file not shown.
@@ -11,11 +11,15 @@ repositories {
|
||||
|
||||
dependencies {
|
||||
implementation 'org.jsoup:jsoup:1.16.1'
|
||||
|
||||
implementation 'com.google.code.gson:gson:2.10.1'
|
||||
|
||||
implementation 'org.apache.poi:poi:5.2.3'
|
||||
implementation 'org.apache.poi:poi-ooxml:5.2.3'
|
||||
|
||||
implementation 'org.apache.logging.log4j:log4j-core:2.20.0'
|
||||
testImplementation 'org.slf4j:slf4j-simple:2.0.7'
|
||||
|
||||
implementation 'com.itextpdf:itext7-core:8.0.0'
|
||||
|
||||
testImplementation 'org.junit.jupiter:junit-jupiter-api:5.8.1'
|
||||
testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
|
||||
|
||||
48
java/api/src/main/java/itext/BookInfoToPDF.java
Normal file
48
java/api/src/main/java/itext/BookInfoToPDF.java
Normal file
@@ -0,0 +1,48 @@
|
||||
package itext;
|
||||
|
||||
import com.itextpdf.io.font.PdfEncodings;
|
||||
import com.itextpdf.kernel.font.PdfFont;
|
||||
import com.itextpdf.kernel.font.PdfFontFactory;
|
||||
import com.itextpdf.kernel.pdf.PdfDocument;
|
||||
import com.itextpdf.kernel.pdf.PdfWriter;
|
||||
import com.itextpdf.layout.Document;
|
||||
import com.itextpdf.layout.element.Paragraph;
|
||||
|
||||
import java.io.FileOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.time.Year;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
public class BookInfoToPDF {
|
||||
|
||||
public static void main(String[] args) {
|
||||
Map<String, String> bookInfo = new HashMap<>();
|
||||
bookInfo.put("title", "자바");
|
||||
bookInfo.put("author", "홍길동");
|
||||
bookInfo.put("publisher", "출판사");
|
||||
bookInfo.put("year", String.valueOf(Year.now().getValue()));
|
||||
bookInfo.put("price", "25000");
|
||||
bookInfo.put("pages", "400");
|
||||
|
||||
try {
|
||||
PdfWriter writer = new PdfWriter(new FileOutputStream("book_info.pdf"));
|
||||
PdfDocument pdf = new PdfDocument(writer);
|
||||
Document document = new Document(pdf);
|
||||
|
||||
PdfFont font = PdfFontFactory.createFont("NanumGothicLight.ttf", PdfEncodings.IDENTITY_H, PdfFontFactory.EmbeddingStrategy.FORCE_EMBEDDED);
|
||||
document.setFont(font);
|
||||
|
||||
for (String key : bookInfo.keySet()) {
|
||||
Paragraph paragraph = new Paragraph(key + ": " + bookInfo.get(key));
|
||||
document.add(paragraph);
|
||||
}
|
||||
|
||||
document.close();
|
||||
|
||||
System.out.println("pdf 파일 생성 완료");
|
||||
} catch (IOException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user