java代码 html怎么转pdf
时间: 2024-02-01 19:04:13 浏览: 128
要将HTML转换为PDF,可以使用iText库。以下是示例代码:
```
import com.itextpdf.text.Document;
import com.itextpdf.text.Element;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.PdfWriter;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import java.io.FileOutputStream;
import java.io.IOException;
public class HtmlToPdfConverter {
public static void main(String[] args) throws IOException {
String html = "<html><head><title>HTML to PDF</title></head><body><h1>HTML to PDF</h1><p>This is a sample HTML document.</p></body></html>";
String pdfFile = "output.pdf";
convert(html, pdfFile);
}
public static void convert(String html, String pdfFile) throws IOException {
Document document = new Document();
PdfWriter.getInstance(document, new FileOutputStream(pdfFile));
document.open();
org.jsoup.nodes.Document doc = Jsoup.parse(html);
Elements elements = doc.getAllElements();
for (Element element : elements) {
if (element.tagName().equals("h1")) {
Paragraph para = new Paragraph(element.text());
para.setAlignment(Element.ALIGN_CENTER);
document.add(para);
} else if (element.tagName().equals("p")) {
Paragraph para = new Paragraph(element.text());
para.setAlignment(Element.ALIGN_JUSTIFIED);
document.add(para);
}
}
document.close();
}
}
```
在此示例中,我们使用Jsoup库将HTML解析为DOM树。然后,我们遍历DOM树并将每个段落和标题添加到PDF文档中。最后,我们使用iText库将文档写入PDF文件中。您可以根据需要添加更多的HTML元素并相应地处理它们。
阅读全文