Heim >Web-Frontend >Front-End-Fragen und Antworten >Java-HTML in PDF umwandeln

Java-HTML in PDF umwandeln

WBOY
WBOYOriginal
2023-05-15 15:37:382063Durchsuche

Mit der Entwicklung des Internets haben immer mehr Unternehmen und Privatpersonen begonnen, ihre Dokumente und Informationen in elektronischer Form zu speichern und zu teilen. Unter diesen elektronischen Dokumenten ist das PDF-Format zweifellos eines der beliebtesten und vielseitigsten Formate, da es unabhängig von Betriebssystemen und Anwendungen auf verschiedenen Plattformen auf die gleiche Weise angezeigt werden kann und zudem nicht einfach zu bearbeiten ist.

Manchmal müssen wir jedoch einige HTML-Seiten oder Ausgabeinhalte von Java-Programmen in das PDF-Format konvertieren. Zu diesem Zeitpunkt müssen wir einige professionelle Tools und Technologien verwenden. In diesem Artikel werden die spezifischen Schritte und Ideen dieses Prozesses vorgestellt, indem erläutert wird, wie die Java-Sprache einige Bibliotheken und Frameworks verwendet, um die Funktion der Konvertierung von HTML und Java in PDF zu realisieren.

1. Verwenden Sie Flying Saucer, um HTML in PDF zu konvertieren.

Flying Saucer ist eine Java-CSS-Rendering-Engine, die speziell zum Konvertieren von XHTML-, XML- und CSS-Stylesheets in das PDF- oder Bildformat verwendet wird . Es bietet eine benutzerfreundliche API, die vollständige und qualitativ hochwertige Seiten im PDF-Format mit Funktionen wie Superfonts und CSS3 rendern kann.

1. Stellen Sie die Abhängigkeitsbibliothek von Flying Saucer vor

Fügen Sie Abhängigkeiten in der pom.xml-Datei wie folgt hinzu:

<dependency>    
    <groupId>org.xhtmlrenderer</groupId>    
    <artifactId>flying-saucer-pdf</artifactId>    
    <version>9.1.20</version>
</dependency>

2. Verwenden Sie das ITextRenderer-Objekt in PDF

Erstellen Sie eine Vorlage und geben Sie den HTML-Inhalt über den folgenden Code ein:

// DOM解析器
DocumentBuilder builder = DocumentBuilderFactory.newInstance().newDocumentBuilder(); 
// 创建一个Model用于存储转换后的文档 
Document document = builder.newDocument(); 
 
// 读取html内容并转换为文档树 
StringReader reader = new StringReader("要转化为PDF的html格式内容"); 
InputSource source = new InputSource(reader); 
// 获取根元素 
Element root = document.getDocumentElement(); 
// 将html输入文档树种 
Node node = document.importNode(root, true); 
// 将html根元素加入文档树中 
document.appendChild(node); 
 
// 转化为PDF 
ITextRenderer renderer = new ITextRenderer(); 
renderer.setDocument(document, null); 
renderer.layout(); 
OutputStream out = new FileOutputStream(pdfUrl); 
renderer.createPDF(out);

2. Verwenden Sie iText, um Java-Objekte in PDF zu konvertieren

#🎜🎜 #Neben der Konvertierung von HTML in PDF können wir über die iText-Bibliothek auch Java-Objekte in PDF-Dateien konvertieren. iText ist eine Java-PDF-Operationsbibliothek, die die Möglichkeit bietet, PDF-Formatdateien und eine Operations-API zu generieren.

1. iText-Abhängigkeit einführen

iText-Abhängigkeitsbibliothek in Maven hinzufügen, wie unten gezeigt:

<dependency>    
    <groupId>com.itextpdf</groupId>    
    <artifactId>itextpdf</artifactId>    
    <version>5.5.11</version>
</dependency>

2. PDF-Dokumentobjekt erstellen#🎜 🎜 #
// 创建pdf文件对象 
Document document = new Document(PageSize.A4); 
// 文件输出流 
OutputStream outputStream = new FileOutputStream("test.pdf"); 
// 将文件流作为输出对象 
PdfWriter.getInstance(document, outputStream); 
// 打开文件 
document.open(); 
// 向文件中添加段落,代码省略 
// 关闭文件 
document.close()

3. Inhalt zum Dokument hinzufügen

Der folgende Code kann Java-Objekte zu PDF hinzufügen:

// 添加文字 
Font font = new Font(); 
font.setStyle(Font.BOLD); 
font.setSize(18); 
Paragraph paragraph = new Paragraph("Hello World!", font); 
document.add(paragraph); 
 
// 添加表格 
PdfPTable table = new PdfPTable(3); 
table.addCell("Candidate ID"); 
table.addCell("Candidate Name"); 
table.addCell("Status"); 
for(int i=0;i<10;i++) { 
    table.addCell("00"+i); 
    table.addCell("Candidate "+i); 
    table.addCell("Selected"); 
}
document.add(table);

4. PDF-Datei ausgeben#🎜🎜 ## 🎜🎜#Geben Sie abschließend die PDF-Datei über den Dateiausgabestream aus:

// 文件输出流 
OutputStream outputStream = new FileOutputStream("test.pdf"); 
// 将文件流作为输出对象 
PdfWriter.getInstance(document, outputStream);

Es ist ersichtlich, dass iText eine umfangreiche API bereitstellt, mit der PDF-Dokumentobjekte erstellt und bearbeitet werden können, während Flying Saucer It kann komplexe CSS-Stile und XHTML-Tags gut verarbeiten und HTML-Seiten in PDF-Dateien konvertieren. Ich glaube, dass Sie mit diesen beiden Tools HTML- und Java-Programminhalte einfacher in PDF-Dateien konvertieren können.

Das obige ist der detaillierte Inhalt vonJava-HTML in PDF umwandeln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:So suchen Sie in HTMLNächster Artikel:So suchen Sie in HTML