国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java HTML生成PDF(格式不變)

這篇具有很好參考價值的文章主要介紹了Java HTML生成PDF(格式不變)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

Java是大規(guī)模和企業(yè)級應(yīng)用程序最常用的編程語言之一。PDF 格式代表可移植文檔格式,為人們提供了一種簡單、可靠的方式來呈現(xiàn)和交換文檔 - 無論查看文檔的任何人使用何種軟件、硬件或操作系統(tǒng)。因此,pdf 是一種廣泛使用的格式,用于在軟件應(yīng)用程序中生成文檔。

HTML 用于表示 Web 瀏覽器中的信息。因此,應(yīng)用程序的每個信息、報告、發(fā)票或網(wǎng)頁都是 HTML 格式的。因此,我們需要學(xué)習(xí)從HTML生成pdf文件。在本教程中,我們將學(xué)習(xí)將 HTML 文件轉(zhuǎn)換為 pdf 文件。

我們需要一個第三方庫來將 HTML 文件轉(zhuǎn)換為 pdf 文件。有多個庫可用,其優(yōu)點(diǎn)和缺點(diǎn)。其中一些是付費(fèi)的,有些沒有提供足夠的功能,其中一些不能以 100% 的準(zhǔn)確性轉(zhuǎn)換 HTML 文件,其中一些存在性能問題。

我發(fā)現(xiàn)[IronPDF](https://ironpdf.com/java/)?java庫非常適合此目的,因?yàn)樗梢悦赓M(fèi)開發(fā),更安全,在單個庫中提供100%精度的所有功能,并且具有出色的性能。

在繼續(xù)之前,讓我們簡要介紹一下 IronPDF。
## ?IronPDF:

IronPDF是由[IronSoftware](https://ironpdf.com/java/)開發(fā)的最流行的Java PDF庫,用于創(chuàng)建和編輯PDF。其簡單的API使開發(fā)人員能夠在各種Java項(xiàng)目中從HTML創(chuàng)建專業(yè),高質(zhì)量的PDF,包括Scala和Kotlin。IronPDF通過gRPC與IronPdfEngine通信。

主要功能包括使用HTML,HTTP,JavaScript,CSS和各種圖像格式創(chuàng)建PDF文檔。我們還可以添加頁眉和頁腳、簽名、附件、密碼和安全性。它提供了完整的多線程支持,而且數(shù)量更多!

現(xiàn)在我們將開始代碼示例。

首先,我們需要創(chuàng)建一個新的 maven 項(xiàng)目

java后端將html生成pdf,java,java,開發(fā)語言

?

命名項(xiàng)目,選擇位置,選擇語言,生成系統(tǒng)和JDK。點(diǎn)擊創(chuàng)建按鈕。將創(chuàng)建一個新項(xiàng)目。

現(xiàn)在,我們將在我們的Java應(yīng)用程序中安裝IronPDF。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#install-ironpdf-java-library)安裝 IronPDF Java 庫

我們需要將 IronPDF 定義為 pom.xml 文件中的依賴項(xiàng),以便在我們的應(yīng)用程序中安裝此庫。打開 pom.xml 文件并在該文件中添加以下 XML。

```
?<dependency>
? ? ? ? <groupId>com.ironsoftware</groupId>
? ? ? ? <artifactId>ironpdf</artifactId>
? ? ? ? <version>2023.1.1</version>
? ? </dependency>
<dependency>
? ? <groupId>org.slf4j</groupId>
? ? <artifactId>slf4j-simple</artifactId>
? ? <version>2.0.3</version>
</dependency>
```

現(xiàn)在,生成項(xiàng)目。該庫將從?[maven 存儲庫](https://central.sonatype.com/artifact/com.ironsoftware/ironpdf/2023.1.1)自動安裝到我們的應(yīng)用程序中。

用 HTML 創(chuàng)建 pdf 文件的示例開始。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#create-pdf-file-from-html-string)從 HTML 字符串創(chuàng)建 PDF 文件:

請參考以下示例:
```
?String htmlString = "<h1>My First PDF File<h1/><p> This is sample pdf file</p>";
? ? ? ? PdfDocument myPdf = PdfDocument.renderHtmlAsPdf(htmlString);

// Save the PdfDocument to a file
? ? ? ? try {
? ? ? ? ? ? myPdf.saveAs(Paths.get("myPDF.pdf") );
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? throw new RuntimeException(e);
? ? ? ? }
```
我們已將 HTML 內(nèi)容分配給一個字符串變量。由 IronPDF 庫的 PdfDocument 類提供的 renderHtmlAsPdf() 函數(shù)將字符串作為參數(shù),并將 html 內(nèi)容轉(zhuǎn)換為 pdf 文檔實(shí)例。saveAs() 函數(shù)將位置路徑作為參數(shù),并將該 pdf 文檔實(shí)例保存到我們提供的目錄中。

try-and-catch 語句用于處理任何運(yùn)行時異常。這只是在處理文件或數(shù)據(jù)庫時使用的最佳做法。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#output)輸出:

以下是上述代碼生成的 pdf。

![jumlqibo2pd3jxuisewv.png](https://p3-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/0c2ac0930c364773b9b0623d4a384435~tplv-k3u1fbpfcp-watermark.image?)
我們已將 HTML 內(nèi)容分配給一個字符串變量。由 IronPDF 庫的 PdfDocument 類提供的 renderHtmlAsPdf() 函數(shù)將字符串作為參數(shù),并將 html 內(nèi)容轉(zhuǎn)換為 pdf 文檔實(shí)例。saveAs() 函數(shù)將位置路徑作為參數(shù),并將該 pdf 文檔實(shí)例保存到我們提供的目錄中。

try-and-catch 語句用于處理任何運(yùn)行時異常。這只是在處理文件或數(shù)據(jù)庫時使用的最佳做法。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#output)輸出:

以下是上述代碼生成的 pdf。

java后端將html生成pdf,java,java,開發(fā)語言

?


以下是示例代碼片段:
```
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("myFile.html");

// Save the PdfDocument to a file
? ? ? ? try {
? ? ? ? ? ? myPdf.saveAs("myPDF.pdf");
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? throw new RuntimeException(e);
? ? ? ? }
? ? }
```
renderHtmlFileAsPdf() 將 HTML 文件路徑作為參數(shù),并將給定的 HTML 文件轉(zhuǎn)換為 pdf 文檔。稍后,此pdf文檔將使用saveAs()函數(shù)保存到本地驅(qū)動器中。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#output)輸出:

以下是我們的程序生成的pdf文檔。

java后端將html生成pdf,java,java,開發(fā)語言

?


現(xiàn)在,我們將使用一個包含CSS和Javascript的大型HTML文檔。我們將觀察它在將 html 轉(zhuǎn)換為 pdf 時保持的準(zhǔn)確性和設(shè)計。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#convert-html-files-into-a-pdf-document)將 HTML 文件轉(zhuǎn)換為 PDF 文檔:

我將使用以下示例 HTML 頁面,其中包含圖像、動畫、樣式、jQuery 和引導(dǎo)程序。

'java后端將html生成pdf,java,java,開發(fā)語言

java后端將html生成pdf,java,java,開發(fā)語言?

?



我們可以看到示例 HTML 文檔具有圖像和復(fù)雜的樣式。我們將此HTML文件轉(zhuǎn)換為PDF文檔,并觀察樣式和內(nèi)容的準(zhǔn)確性。

我們將使用與上面示例中使用的相同代碼行。
```
PdfDocument myPdf = PdfDocument.renderHtmlFileAsPdf("index.html");

// Save the PdfDocument to a file
? ? ? ? try {
? ? ? ? ? ? myPdf.saveAs("myPDF.pdf");
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? throw new RuntimeException(e);
? ? ? ? }
? ? }
```
上一示例中已提供代碼說明。我們只是改變了路徑,其余的都是一樣的。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#output)輸出:

以下是生成的 pdf:


java后端將html生成pdf,java,java,開發(fā)語言
我們可以看到,使用IronPDF生成pdf非常容易。pdf 內(nèi)容和樣式與源文檔相同。

?

?

我們還可以使用 URL 生成 pdf 文件。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#convert-url-to-pdf-document)將網(wǎng)址轉(zhuǎn)換為 PDF 文檔:

以下代碼示例將從 URL 生成 pdf 文件。
```
?PdfDocument myPdf = PdfDocument.renderUrlAsPdf("https://en.wikipedia.org/wiki/PDF");


// Save the PdfDocument to a file
? ? ? ? try {
? ? ? ? ? ? myPdf.saveAs("myPDF.pdf");
? ? ? ? } catch (IOException e) {
? ? ? ? ? ? throw new RuntimeException(e);
? ? ? ? }
? ? }
```
renderUrlAsPdf() 將 URL 作為參數(shù),并將該 URL 轉(zhuǎn)換為 pdf 文檔。稍后,此pdf文檔將使用saveAs()函數(shù)保存到本地驅(qū)動器中。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#output)輸出:

以下是生成的 pdf:

k3u1fbpfcp/6cef5cb195894f19bc30d6b8585a5bb9~tplv-k3u1fbpfcp-watermark.image?)

java后端將html生成pdf,java,java,開發(fā)語言
我們還可以添加水印、頁眉、頁腳、數(shù)字簽名等等。

?

讓我們將自定義水印、頁眉和頁腳添加到生成的 pdf 中。

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#add-watermark)添加水印:

以下代碼會將水印添加到我們的 pdf 文件中。 ?
`myPdf.applyWatermark("My Custom Watermark");`

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#add-header-and-footer)添加頁眉和頁腳:

`myPdf.addHtmlHeader(new HtmlHeaderFooter("my Header"));`

## [](https://dev.to/mhamzap10/java-generate-pdf-from-html-without-losing-formatting-2dam#add-footer)添加頁腳:

`myPdf.addHtmlFooter(new HtmlHeaderFooter("my Header"));`

同樣,我們可以添加前景、復(fù)制 pdf、合并 pdf 等等。文章來源地址http://www.zghlxwxcb.cn/news/detail-516965.html

到了這里,關(guān)于Java HTML生成PDF(格式不變)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【aspose之三】【springboot】java使用aspose.html 的cloud版html轉(zhuǎn)pdf,html2pdf

    把url網(wǎng)頁或本地文件html轉(zhuǎn)換pdf 1.maven配置 2.代碼 本地文件 html轉(zhuǎn)pdf 可本地文件或url轉(zhuǎn)換 pdf布局設(shè)置 2.密鑰及配置 aspose配置

    2024年02月06日
    瀏覽(21)
  • java 發(fā)送html 格式的郵件

    在 Java 中,可以使用 JavaMail API 來發(fā)送 HTML 格式的郵件。下面是一個簡單的示例代碼: 在上面的代碼中,首先設(shè)置了收件人、發(fā)件人、發(fā)件人密碼和郵件服務(wù)器的信息。然后設(shè)置了系統(tǒng)屬性,包括郵件服務(wù)器、SMTP 認(rèn)證、SMTP 端口和 SSL 連接。接著創(chuàng)建一個默認(rèn)的 Session 對象,

    2024年02月15日
    瀏覽(19)
  • java html轉(zhuǎn)word、pdf(包含圖片)

    maven依賴 核心代碼 maven依賴 核心代碼 Base64ImgReplacedElementFactory類

    2024年02月07日
    瀏覽(27)
  • 【Java】制作pdf模板使用后端程序填充字段生成pdf或者圖片

    【Java】制作pdf模板使用后端程序填充字段生成pdf或者圖片

    自行下載安裝; 打開pdf文件,表單-添加或編輯域 添加文本域,調(diào)整大小,可以編輯域的名字,默認(rèn)fill_1這種名字。域鼠標(biāo)右鍵-屬性,可以調(diào)整字體大小等樣式,編輯好還可以鎖定; 編輯好保存,這個pdf文件就可以當(dāng)模板使用了; 防止中文亂碼,需要在網(wǎng)上下載字體ttf文件

    2024年01月21日
    瀏覽(26)
  • java中使用Jsoup和Itext實(shí)現(xiàn)將html轉(zhuǎn)換為PDF

    java中使用Jsoup和Itext實(shí)現(xiàn)將html轉(zhuǎn)換為PDF

    1.在build.gradle中安裝所需依賴: 2.創(chuàng)建工具類,實(shí)現(xiàn)轉(zhuǎn)換方法 3.base64過濾類: 4.字體類代碼,window用戶可在C:windowsfont中尋找自己所需字體即可。我這里用的為黑體: simhei.ttf 效果如下: html頁面預(yù)覽: pdf頁面預(yù)覽: ? ?

    2024年02月14日
    瀏覽(25)
  • 前端打開后端返回的HTML格式的數(shù)據(jù)

    前端打開后端返回的HTML格式的數(shù)據(jù)

    前端打開后端返回的 HTML格式 的數(shù)據(jù): 注:如果后端返回的是一個網(wǎng)址則不使用這個方式,可以使用 iframe / 標(biāo)簽 在本地打開返回的網(wǎng)址:示例如下: iframe /? 具體使用請參考

    2024年02月12日
    瀏覽(89)
  • 前端渲染后端返回的HTML格式的數(shù)據(jù)

    前端渲染后端返回的HTML格式的數(shù)據(jù)

    在日常開發(fā)中,經(jīng)常有需要前端渲染后端返回頁面的需求,對于不同數(shù)據(jù)結(jié)構(gòu),前端的渲染方式也不盡相同,本文旨在對各種情況進(jìn)行總結(jié)。 數(shù)據(jù)包含html標(biāo)簽等元素,數(shù)據(jù)類型如下圖: 前端通過 js 方式處理 前端需要渲染網(wǎng)址中的頁面,可通過iframe實(shí)現(xiàn): 數(shù)據(jù)包含部分標(biāo)簽

    2024年02月08日
    瀏覽(21)
  • 【PDF】html/dom生成pdf

    【PDF】html/dom生成pdf

    上一篇博客主要講的是pdf文件轉(zhuǎn)換成canvas,然后進(jìn)行相關(guān)的畫框截圖操作。 【PDF】Canvas繪制PDF及截圖 本篇博客主要講html中dom如何生成pdf文件(前端生成pdf),后端生成pdf當(dāng)然也可以,原理也是將html網(wǎng)頁通過后端服務(wù)導(dǎo)出成pdf,然后css設(shè)置break-after:always;作為分頁邏輯,但是

    2024年02月16日
    瀏覽(26)
  • 批量PDF轉(zhuǎn)HTML:高效管理與優(yōu)化文檔格式

    批量PDF轉(zhuǎn)HTML:高效管理與優(yōu)化文檔格式

    隨著數(shù)字化時代的快速發(fā)展,PDF文件因其跨平臺兼容性和良好的排版效果而被廣泛應(yīng)用。然而,在文本批量管理的場景中,我們可能需要將PDF文件轉(zhuǎn)換為HTML格式,以便更好地進(jìn)行編輯、搜索和定制。本文將為您介紹一種高效的方法,幫助您輕松實(shí)現(xiàn)PDF到HTML的批量轉(zhuǎn)換。 首先

    2024年03月13日
    瀏覽(20)
  • java實(shí)現(xiàn)帶有html格式和附件的符合RFC822規(guī)范的eml格式的信件原文組裝

    html傳遞就是解析成帶有 html標(biāo)簽的字符串在正文中傳遞即可 From:綜合運(yùn)行平臺 to:111@qq.com // 重點(diǎn)是格式設(shè)置成text/html 編碼的話需要設(shè)置成UTF-8,不然可能直接在正文中展示html標(biāo)簽,為不是解析成具體的樣式 Content-Type: text/html;charset=UTF-8 subject:主題 郵件正文 From:綜合運(yùn)行平臺

    2024年02月10日
    瀏覽(14)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包