タグ: java html コード| 公開時間: 2016-05-13 07:40 | 著者: hunan84229247
出典: http://www.iteye.com
http://blog.csdn.net/zdtwyjp/article/details/5769353
http://www.xuebuyuan.com/2056017.html
1. IText は html2pdf を実装します。これは高速ですが、エラー修正機能が不十分です (Unicode エンコーディングを使用するには HTML が必要です)。オープンソースの中国語フォント。
2. Flying Sauser は html2pdf を実装していますが、エラー修正機能が不十分で、複数の中国語フォントをサポートしており (一部のスタイルは認識できません)、オープンソースです。
3. PD4ML は、高速で強力なエラー修正機能を備えた html2pdf を実装し、複数の中国語フォントをサポートしており、商用です。
(1) IText
公式 Web サイト: http://www.itextpdf.com/
テスト ケース: TestIText.java
jar に依存パッケージ: iText-2.0.8.jar、iTextAsian.jar (中国語をサポート)
以下は単なる小さなテスト ケースです。このコンポーネントがプロジェクトで使用されている場合、API を参照してテストを完了できます。プロジェクトチームの対応する機能!
[c-sharp] プレーンコピーを表示
- import java.io.FileOutputStream;
- import java.io.FileReader;
- import java.util.ArrayList;
- import com.lowagie.text.Document;
- import com.lowagie.text.Element;
- com.lowagie.text.Font をインポートします。
- import com.lowagie.text.PageSize;
- import com.lowagie.text.Paragraph;
- import com.lowagie.text.html.simpleparser.HTMLWorker;
- import com.lowagie.text.html.simpleparser.StyleSheet;
- import com.lowagie.text.pdf.BaseFont;
- import com.lowagie.text.pdf.PdfWriter;
- public class TestIText{
- public static void main(String[] args) {
- TestIText ih = new TestIText();
- ih.htmlCodeComeFromFile("D://Test//iText.html", "D://Test//iText_1.pdf");
- ih.htmlCodeComeString("Hello中文", "D://Test//iText_2.pdf");
- }
- public void htmlCodeComeFromFile(String filePath, String pdfPath) {
- Document document = new Document();
- 試し {
- StyleSheet st = new StyleSheet();
- st.loadTagStyle("body", "leading", "16,0");
- PdfWriter.getInstance(document, new FileOutputStream(pdfPath));
- document.open();
- ArrayList p = HTMLWorker.parseToList(new FileReader(filePath), st);
- for(int k = 0; k
- document.add((Element)p.get(k));
- }
- document.close();
- System.out.println("文档创建成功");
- }catch(Exception e) {
- e.printStackTrace();
- }
- }
- public void htmlCodeComeString(String htmlCode, String pdfPath) {
- Document doc = new Document(PageSize.A4);
- 試してください {
- PdfWriter.getInstance(doc, new FileOutputStream(pdfPath));
- doc.open();
- // 解决中文问题
- BaseFont bf Chinese = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", BaseFont.NOT_EMBEDDED);
- Font Font Chinese = 新しい Font(bf Chinese, 12, Font.NORMAL);
- 段落 t = 新しい 段落(htmlCode, フォント中国語);
- doc.add(t);
- doc.close();
- System.out.println("文档创建成功");
- }catch(Exception e) {
- e.printStackTrace();
- }
- }
- }
(二)フライングソーザー
项目主页: https:/ /xhtmlrenderer.dev.java.net/
依赖jar包:iText-2.0.8.jar、iTextAsian.jar、core-renderer.jar
默认情况下、core-renderer。 jar 中文は移動実行できません。削除したい場合は http://bettereveryday.javaeye.com/blog/611561jar パッケージをダウンロードして、このパッケージのソースコードを実行してください。
以下は、項目内で使用されている場合、API を参照して項目内での関連機能を完了できる、小さなテスト ソリューションの例です。
[c-sharp] view plain copy
- java.io.File をインポートします。
- import java.io.FileOutputStream;
- import java.io.OutputStream;
- import org.xhtmlrenderer.pdf.ITextFontResolver;
- import org.xhtmlrenderer.pdf.ITextRenderer;
- import com.lowagie.text.pdf.BaseFont;
- public class TestFlyingSauser {
- public static void main(String[] args) throws Exception {
- demo_1();
- demo_2();
- }
- //不サポート中文
- public static void demo_1() throws Exception {
- String inputFile = 「D :/Test/flying.html";
- String url = new File(inputFile).toURI().toURL().toString();
- String outputFile = "D:/Test/flying.pdf";
- OutputStream os = new FileOutputStream(outputFile);
- ITextRendererレンダラー=新しいITextRenderer();
- renderer.setDocument(url);
- renderer.layout();
- renderer.createPDF(os);
- os.close();
- }
- // 中文サポート
- public static void demo_2() throws Exception { String outputFile = 「D: /テスト/デモ_3.pdf";
- OutputStream os = new FileOutputStream(outputFile);
- ITextRendererレンダラー=新しいITextRenderer();
- ITextFontResolver fontResolver = renderer.getFontResolver();
- fontResolver.addFont("C:/Windows/fonts/simsun.ttc", BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED);
- StringBuffer html = new StringBuffer();
- // DOCTYPE 必写かどうかこの文字解析会出现错误
- html.append(""-//W3C//DTD XHTML 1.0過渡期//EN/" /"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd/">");
- html.append("").append("")
- .append("")
- .append( "")
- .append("")
- .append("");
- html.append("支持中文!");
- html.append("");
- renderer.setDocumentFromString(html.toString());
- ;
- renderer.createPDF(os);
- }
- }
- 🎜> http://bettereveryday.javaeye.com/blog/611561
- 参考: http://yongboy.javaeye.com/blog/510976
- http://www.51itsns 。 com/sns/space.php?uid=4&do=blog&id=582
(3) PD4ML
公式 Web サイトのダウンロード: http://pd4ml.com/downloads.htm
jar パッケージに依存します: pd4ml_demo.jar、pd4ml__css2.jar、fonts.jar
以下は単なる小さなテスト ケースです。このコンポーネントがプロジェクトで使用されている場合、API を参照できます。対応するプロジェクト チームの関数を完成させます。
[java] プレーン コピー
- import java.awt.Insets;
- java.io.File をインポートします。
- import java.io.FileOutputStream;
- import java.io.StringReader;
- import org.zefer.pd4ml.PD4Constants;
- import org.zefer.pd4ml.PD4ML;
- public class Converter {
- public static void main(String[] args) throws Exception {
- Converter converter = new Converter();
- converter.generatePDF_2(new File("D:/Test/demo_ch_pd4ml_a.pdf"), "D:/Test/a.htm");
- ファイル pdfFile = 新しい File("D:/Test/demo_ch_pd4ml.pdf");
- StringBuffer html = new StringBuffer();
- html.append("")
- .append("")
- .append("")
- .append("")
- .append("")
- .append("")
- .append("显示中文")
- .append("")
- .append(" html>");
- StringReader strReader = new StringReader(html.toString());
- converter.generatePDF_1(pdfFile, strReader);
- }
- // 手動构造HTML代番号
- public void generatePDF_1(File outputPDFFile, StringReader strReader) throws Exception { FileOutputStream fos = 新しい FileOutputStream(出力PDFファイル);
- PD4ML pd4ml = 新しい PD4ML();
- pd4ml.setPageInsets(new Insets(20, 10, 10, 10));
- pd4ml.setHtmlWidth(950);
- pd4ml.setPageSize(pd4ml.changePageOrientation(PD4Constants.A4));
- pd4ml.useTTF("java:fonts", true);
- pd4ml.setDefaultTTFs("KaiTi_GB2312", "KaiTi_GB2312", "KaiTi_GB2312");
- pd4ml.enableDebugInfo();
- pd4ml.render(strReader, fos);
- }
- // HTML代発HTML文件
- public void generatePDF_2(File outputPDFFile, String inputHTMLFileName) throws Exception { FileOutputStream fos = 新しい FileOutputStream (出力PDFファイル);
- PD4ML pd4ml = 新しい PD4ML();
- pd4ml.setPageInsets(new Insets(20, 10, 10, 10));
- pd4ml.setHtmlWidth(950);
- pd4ml.setPageSize(pd4ml.changePageOrientation(PD4Constants.A4));
- pd4ml.useTTF("java:fonts", true);
- pd4ml.setDefaultTTFs("KaiTi_GB2312", "KaiTi_GB2312", "KaiTi_GB2312");
- pd4ml.enableDebugInfo();
- pd4ml.render("file:" + inputHTMLFileName, fos);
- }
- }
http://www.pd4ml.com/examples.htm
http://www.pd4ml.com/api/index.html
http://pd4ml.com/reference.htm#7.1
http://pd4ml. com/support/html-pdf-faq-f1/double-byte-support-t195.html
http://pd4ml.com/support/pd4ml-html-css-pdf-tips-tricks-f7 /ttf-embedding-t42.html
PDF 文档の生成方案大致就这是了,希望能够给大家带来帮助!如果上面的三种方案都还不足目组的需要哪就只有去
すでに 0 人が公開表言、猛击->> を所有しています。 这里ITeye推荐
- —软件人才免语言低権利赴美带薪读研!—

HTMLは、Webページを構築するために使用される言語であり、タグと属性を使用してWebページの構造とコンテンツを定義します。 1)htmlは、などのタグを介してドキュメント構造を整理します。 2)ブラウザはHTMLを分析してDOMを構築し、Webページをレンダリングします。 3)マルチメディア関数を強化するなど、HTML5の新機能。 4)一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれます。 5)最適化の提案には、セマンティックタグの使用とファイルサイズの削減が含まれます。

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

HTMLの役割は、タグと属性を使用してWebページの構造とコンテンツを定義することです。 1。HTMLは、読みやすく理解しやすいようなタグを介してコンテンツを整理します。 2。アクセシビリティとSEOを強化するには、セマンティックタグなどを使用します。 3. HTMLコードの最適化により、Webページの読み込み速度とユーザーエクスペリエンスが向上する可能性があります。

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

HTMLはWeb構造を定義し、CSSはスタイルとレイアウトを担当し、JavaScriptは動的な相互作用を提供します。 3人はWeb開発で職務を遂行し、共同でカラフルなWebサイトを構築します。

HTMLは、簡単に学習しやすく、結果をすばやく見ることができるため、初心者に適しています。 1)HTMLの学習曲線はスムーズで簡単に開始できます。 2)基本タグをマスターして、Webページの作成を開始します。 3)柔軟性が高く、CSSおよびJavaScriptと組み合わせて使用できます。 4)豊富な学習リソースと最新のツールは、学習プロセスをサポートしています。

Anexampleapalofastartingtaginhtmlis、それはaperginsaparagraph.startingtagsaresentionentientiontheyinitiateelements、definetheirtypes、およびarecrucialforurturingwebpagesandcontingthomedomを構築します。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

SublimeText3 中国語版
中国語版、とても使いやすい

Dreamweaver Mac版
ビジュアル Web 開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
