2017-03-04 203 views
0

創建的PDF將基於動態HTML頁面。如何使用ITEXT或PDFCROWD API將HTML頁面轉換爲PDF

使用帶有XMLWORKERHELPERCLASS的ITEXT 5或7將是一個漫長的過程。

如果我使用的是pdfcrowd API,它似乎是好的,但無法在localhost或任何其他私有IP上生成。如果他們達到上述目的,我準備爲他們的服務付費。

+1

你究竟想說什麼?它看起來好像你想要一個pdfcrowd解決方案,另一方面你標記你的問題itext。 – mkl

+0

事實上,這個問題揭示了缺乏尊重,因爲iText 7沒有'XmlWorkerHelper'類(這是iText 5的術語)。因此,指稱使用iText 7和pdfHtml插件將是一個漫長的過程是錯誤的。 OP可能會提到iText,因爲iText品牌非常強大,但這並不是使用該標籤的藉口。我投票結束這個問題「不清楚」,因爲沒有任何代碼樣本可以讓人們重現問題。目前還不清楚OP正面臨哪個iText問題。 –

回答

1

首先,您需要獲取iText 7(核心庫)和pdfHtml插件(將解析HTML + CSS並將其轉換爲iText對象的部分)。去github找出如何下載這些。

假設你有這樣的HTML

enter image description here

有了這個對應CSS

enter image description here

然後你可以使用此代碼段:

ConverterProperties converterProperties = 
    new ConverterProperties().setBaseUri(resoureLocation); 
HtmlConverter.convertToPdf(
    new FileInputStream(HTMLSource), 
    new FileOutputStream(pdfDestination), converterProperties); 

其中resourceLocation指向您的基本URI,HTMLSource是HTML文件的路徑,pdfDestination是您希望寫入結果PDF的路徑。

當你執行這個代碼,你將得到以下PDF

enter image description here

請注意,如果您打算在專有軟件項目的上下文中使用的iText購買商業許可,可能是必要的。

+0

先生,我非常srry ....它是一個驕傲的時刻,布魯諾爵士回答我的querry。我是一名擁有4個月經驗的軟件工程師,我通過閱讀您的Itext開發人員論壇並生成PDF格式盡力而爲,但現在需求如此之高,以至於我很困惑,而且非常優先。先生更多需要說,我會通過[email protected] –

+0

@mkl與您聯繫標記pdfCrowd一個彈出窗口是由statckoverflow給出,說明對於標記pdfCrowd Api我需要一些聲譽。對於ITEXT,我感到非常幸運和自豪 –

+0

在GitHub上找不到'pdfHtml'源代碼,它是否會來?我問的原因是因爲幾乎所有[X] HTML到PDF的問題我已經在這裏回答了SO直接_可以歸因於有源代碼可以學習...... – kuujinbo

相關問題