私は、無料のJavaライブラリを使用して、HTMLファイルをPDFに変換する方法を探しています。私は使用するツールを探すためにオンラインで検索を行ってきましたが、解決策を見つけていませんでした(私はiTextに関するいくつかの言及を見ましたが、それを使用するには料金がかかるようでした)。 HTMLをPDFに変換するために利用できる既存のライブラリはありますか?Javaを使用してHTMLファイルをPDFに変換する
1
A
答えて
0
私はアプリケーションでHTMLテーブルを印刷するためにjavascriptを使用しています。
以下の機能は、[印刷]ボタンのクリックで実行されます。私は印刷のための 'printElement'関数を持っています。
$("#btnlwPrint").off('click').on('click',function() {
var cboVendorName ;
cboVendorName= $('#cboVendorName').combogrid('textbox').val();
var tbodylength=$('#ssgGrid tbody tr').length;
if (cboVendorName =="" || tbodylength <= 1){
$('#warPrintEmptyRow').modal('toggle');
} else {
$('#lWVendor').text(cboVendorName);
printElement(document.getElementById("printHeader"));
printElement(document.getElementById("ssgGrid"),true);
window.print();
}
});
//Below function prints the grid
function printElement(elem, append, delimiter) {
var domClone = elem.cloneNode(true);
var $printSection = document.getElementById("printSection");
if (!$printSection) {
var $printSection = document.createElement("div");
$printSection.id = "printSection";
document.body.appendChild($printSection);
}
if (append !== true) {
$printSection.innerHTML = "";
}
else if (append === true) {
if (typeof(delimiter) === "string") {
$printSection.innerHTML += delimiter;
}
else if (typeof(delimiter) === "object") {
$printSection.appendChlid(delimiter);
}
}
$printSection.appendChild(domClone);
}
2
UPDATE:
私はMavenのレポからフライング・ソーサーを使用して終了:https://mvnrepository.com/artifact/org.xhtmlrenderer/flying-saucer-pdf
私のために働くことを得ることは非常に簡単だった、ここで私が使用して作成された方法がありますこの:
public static void generatePDF(String inputHtmlPath, String outputPdfPath)
{
try {
String url = new File(inputHtmlPath).toURI().toURL().toString();
System.out.println("URL: " + url);
OutputStream out = new FileOutputStream(outputPdfPath);
//Flying Saucer part
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(url);
renderer.layout();
renderer.createPDF(out);
out.close();
} catch (DocumentException | IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
そして、ここでは、使用ある:
public static void main(String[] args){
String inputFile = "C:/Users/jrothst/Desktop/TestHtml.htm";
String outputFile = "C:/Users/jrothst/Desktop/TestPdf.pdf";
generatePDF(inputFile, outputFile);
System.out.println("Done!");
}
これはPDFを出力するのに非常によく機能し、使用するのが非常に簡単でした。また、HTMLのCSSもかなりうまく処理されました。外部のCSSには使用しませんでしたが、それも可能です。
2
あなたは、いくつかのオプションがあります。
- openhtmltopdf - 新しいコード、まだ醸造、いくつかの素晴らしい結果
- Apache FOPが持っている - XMLではなく、HTMLに変換することができますが、itext
- 便利かもしれませんが古いバージョン(バージョン2)
- Wkhtmltopdf - これはJavaから外部プロセスを介して呼び出すことができ、今まで大きな成功を収めています
-1
ここでは、htmlファイルからpdfファイルへの完全な変換例を示します。
import com.itextpdf.text.Document;
import com.itextpdf.text.html.simpleparser.HTMLWorker;
import com.itextpdf.text.pdf.PdfWriter;
import java.io.IOException;
import java.io.FileReader;
import java.io.Reader;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.io.StringReader;
import org.jsoup.Jsoup;
public class Html2pdf2 {
private Html2pdf2() {}
public static String extractText(Reader reader) throws IOException {
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(reader);
String line;
while ((line=br.readLine()) != null) {
sb.append(line);
}
String textOnly = Jsoup.parse(sb.toString()).text();
return textOnly;
}
public final static void main(String[] args) throws Exception{
FileReader reader = new FileReader
("example.html");
try {
OutputStream file = new FileOutputStream(new File("D:\\Test.pdf"));
Document document = new Document();
PdfWriter.getInstance(document, file);
document.open();
HTMLWorker htmlWorker = new HTMLWorker(document);
htmlWorker.parse(new StringReader(ht));
document.close();
file.close();
} catch (Exception e) {
e.printStackTrace();
}
System.out.println("finished converting");
}
}
関連する問題
- 1. phpを使用してhtmlファイルにpdfファイルを変換する
- 2. npmを使用してHTMLをPDFに変換するhtml-pdf
- 3. javaを使用して.mhtファイルをpdfファイルに変換する
- 4. jspdfライブラリを使用してhtmlファイルをpdfに変換する
- 5. Javaを使用してpdfのHTMLコンテンツとCSSコンテンツを変換するには?
- 6. Railsを使用してhtmlファイル(htmlレイアウトではない)をpdfに変換
- 7. Javascriptを使用してhtml(css)テーブルをPDFに変換する
- 8. reportlab djangoを使用してmathjaxを含むhtmlファイルをpdfに変換する
- 9. htmlファイルをpdfに変換する
- 10. HTMLをPDFファイルに変換する
- 11. mvc4でitextsharpを使用してhtmlファイルをpdfに変換する方法
- 12. PHPを使用してHTMLをPDFに変換しますか?
- 13. PDFをjavaを使用してテキストに変換する
- 14. Javaを使用してWord文書をPDFに変換する
- 15. Pythonを使用してHTML/CSS/JavascriptファイルをPDFに変換しますか?
- 16. イメージをpdfに変換してPDFファイルに変換する
- 17. ExcelをPDFに変換する - iTextを使用してJavaを使用する
- 18. Javascriptを使用してHTMLファイルをExcelファイルに変換する
- 19. itextsharpを使用してHTMLをPDFに変換
- 20. TCPDFを使用してHTMLをPDFに変換
- 21. ページHTMLをPDFに変換中にPDFを選択して変換する
- 22. selectPDFを使用してhtmlからpdfヘッダーに変換
- 23. Javaを使用してCSVファイルをXMLファイルに変換する
- 24. vb6プログラムを使用してExcelファイルをpdfファイルに変換するには?
- 25. HTML結果ページをPDFに変換してCGIファイルにダウンロード
- 26. docxファイルをJavaでPDFに変換
- 27. CMDを使用して複数のPowerPointファイルをPDFに変換
- 28. DelphiでHtmlファイルをpdfファイルに変換するには
- 29. msword docファイルとpdfファイルをHTMLコンテンツに変換するには
- 30. iTextを使用して画像を含むHTMLをPDFに変換する