Ich muss meiner Website einige Exportfunktionen wie CSV oder PDF anbieten. Gibt es ein leistungsstarkes und kostenloses Tool für Java, um HTML-Seiten in das PDF-Format zu konvertieren?Wie HTML-Seite in PDF-Format exportieren?
Antwort
Mit Flying Saucer API
mit iText PDF
können Sie HTML-Inhalte in PDF konvertieren.
Die folgenden Beispiele helfen Ihnen, die Umwandlung von XHTML in PDF zu einem gewissen Grad zu verstehen. Mit Flying Saucer API
Beispiele:
Sie benötigen folgende Bibliotheken:
- Kern-renderer.jar
- iText-2.0.8.jar
Sie können diese finden Ressourcen in flyingsaucer-R8.zip
.
Beispiel 1: Verwenden von XML-Ressource:
// if you have html source in hand, use it to generate document object
Document document = XMLResource.load(new ByteArrayInputStream(yourXhtmlContentAsString.getBytes())).getDocument();
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(document, null);
renderer.layout();
String fileNameWithPath = outputFileFolder + "PDF-XhtmlRendered.pdf";
FileOutputStream fos = new FileOutputStream(fileNameWithPath);
renderer.createPDF(fos);
fos.close();
System.out.println("File 1: '" + fileNameWithPath + "' created.");
Beispiel 2: Verwenden von XHTML direkte Eingabe Dokument:
ITextRenderer renderer = new ITextRenderer();
// if you have html source in hand, use it to generate document object
renderer.setDocumentFromString(yourXhtmlContentAsString);
renderer.layout();
String fileNameWithPath = outputFileFolder + "PDF-FromHtmlString.pdf";
FileOutputStream fos = new FileOutputStream(fileNameWithPath);
renderer.createPDF(fos);
fos.close();
System.out.println("File 2: '" + fileNameWithPath + "' created.");
Beispiele iText API verwenden:
Sie benötigen folgende Bibliotheken :
- Kern-renderer.jar
- itextpdf-5.2.1.jar
Sie diese Ressourcen bei here finden.
Example3: Verwenden von HTML Worker:
com.itextpdf.text.Document document =
new com.itextpdf.text.Document(com.itextpdf.text.PageSize.A4);
String fileNameWithPath = outputFileFolder + "PDF-HtmlWorkerParsed.pdf";
FileOutputStream fos = new FileOutputStream(fileNameWithPath);
com.itextpdf.text.pdf.PdfWriter pdfWriter =
com.itextpdf.text.pdf.PdfWriter.getInstance(document, fos);
document.open();
//**********************************************************
// if required, you can add document meta data
document.addAuthor("Ravinder");
//document.addCreator(creator);
document.addSubject("HtmlWoker Parsed Pdf from iText");
document.addCreationDate();
document.addTitle("HtmlWoker Parsed Pdf from iText");
//**********************************************************/
com.itextpdf.text.html.simpleparser.HTMLWorker htmlWorker =
new com.itextpdf.text.html.simpleparser.HTMLWorker(document);
htmlWorker.parse(new StringReader(sb.toString()));
document.close();
fos.close();
System.out.println("File 3: '" + fileNameWithPath + "' created.");
leid für eine späte Antwort .. ... htmlWorker.parse (neuer StringReader (sb.toString())); Ich erhalte eine JSP-Ausgabe ... wie wandle ich das in HTML um. Ich denke, sb ist der XHTML/HTML-Inhalt. Ist das richtig? – Harry
Arabische Buchstaben werden nicht mit Ihrem Code angezeigt. Gibt es einen Weg ? – user4757345
@ user4757345: Haben Sie gesehen, dass der Inhaltstyp "html" auf "text/html; charset = utf-8" gesetzt ist? Grundsätzlich ist es der HTML-Befehl, so dass der Parser das gleiche versteht und verwendet, während er die PDF-Seite erstellt. –
Sie können das JTidy-Framework dafür verwenden. Dadurch wird HTML in XHTML konvertiert und erneut in XSL-FO übersetzt. Dieses Objekt kann zum Erzeugen von PDF verwendet werden.
http://www.javaworld.com/javaworld/jw-04-2006/jw-0410-html.html
- 1. Wie base64 in Datei exportieren?
- 2. Wie Bildfeld in Datei exportieren?
- 3. Animation in Film exportieren
- 4. wie Tabelle HTML-Tabelle in PDF exportieren?
- 5. Wie Ergebnisse von Bootstrapping in R exportieren?
- 6. Wie Archiv in Xcode zu archivieren/exportieren?
- 7. Jobplan in Cogons exportieren
- 8. Bild in CSV exportieren
- 9. Crontab in eine Datei exportieren
- 10. Excel-Objekt in ASP.NET exportieren
- 11. Exportieren einer Umgebungsvariablen in Ruby
- 12. DataGrid Daten in PDF exportieren
- 13. Datenbank in CSV-Datei exportieren
- 14. JSON Mock in Angular2 exportieren
- 15. Exportieren in CSV-Codierung Probleme
- 16. exportieren doppelten Wert in CSV
- 17. Exportieren von Formschlüsseln in Blender
- 18. Exportieren von Modulen in Typoskript
- 19. Companion-Objektmethoden in ScalaJS exportieren?
- 20. Canvas-Inhalt in PDF exportieren
- 21. Flash-Inhalt in PDF exportieren?
- 22. Berichtsexport in Word-Datei exportieren
- 23. Exportieren in MVC mit Ajax
- 24. Subversion-Protokoll in CSV exportieren
- 25. Exportieren von Routen in Koa
- 26. Exportieren (Standard) -Klasse in ReactJS
- 27. Python GraphWin in Datei exportieren
- 28. Wie exportieren Umfrageergebnisse in csv ohne HTML in Qualics?
- 29. Wie Liste der Arrays in Csv in Python exportieren?
- 30. Wie txtfile analysieren und ins Wörterbuch exportieren?
Mögliche doppelte: http://stackoverflow.com/questions/633780/converting-html-files-to-pdf – David