2

私は自分のウェブサイトからPDFを作成するための高速で効率的な方法を探しています。PDFには、HTMLとして渡すことができるいくつかのテキストとともに画像が含まれます。pdfは、私が渡すhtmlの印刷形式である可能性があります。CutePDFが行うことと似た何か。出来ますか?どのように?あなたの考えを共有してください。

4

4 に答える 4

3

wkhtmltopdfほとんどの場合に役立つものを使用してみてください。この小さなexe/rpmをインストールする必要があります。エンジンを使用して最初webkitにをレンダリングし 、WebページをPDFに変換します。インストールしたら、java/phpアプリケーションから呼び出すことができます。インストールする価値があります。htmlheadless browser mode

リンクは次のとおりです:http ://code.google.com/p/wkhtmltopdf/ 。

PS:私は仕事をしていませんwkhtmltopdf:)、私のプロジェクトの1つでitextのような他のいくつかを試しましたが、このツールほど効率的ではありませんでした。

于 2012-07-03T12:15:16.657 に答える
2

本当にそれは私がそれをする1週間前に可能でした。私はjava、servlet、jspを使って同じことをしました。

手順:

  1. htmlファイルを読み、文字列に入れます。
  2. htmlをpdfに変換するためにITextRendererを使用する
  3. setDocumentFromString()を使用して文字列からレンダリングドキュメントを設定します
  4. 次に、createPDF()メソッドを使用してPDFを作成します
    • あなたは指定されたパスまたは出力ストリームにpdfを保存することができます、私は出力ストリームを使用しました

サンプルコード:

Visit http://today.java.net/pub/a/today/2007/06/26/generating-pdfs-with-flying-saucer-and-itext.html
protected void doProcess(HttpServletRequest request,
        HttpServletResponse response){
    response.setContentType("application/pdf;");
    response.setHeader("Content-Disposition", "attachment; filename=Filenametodownload.pdf");       
    String reportContent = "<html><body><b>This is sample HTML</b></body></html>";
    ServletOutputStream sos =null;
    try {
        sos = response.getOutputStream();
    } catch (IOException e1) {          
        e1.printStackTrace();
    }
    String st = System.getProperty("user.dir");
    // ITextRenderer is only works fine with compailed version of core-renderer.jar 
    //Jar available in http://wo-repository.doit.com.br/content/repositories/thirdparty/org/xhtmlrenderer/core-renderer/R8-final/
    ITextRenderer renderer = new ITextRenderer();   
    //System.out.println(reportContent);
    renderer.setDocumentFromString(reportContent);
    renderer.layout();
    try {
        renderer.createPDF(sos);
    } catch (DocumentException e) {         
        e.printStackTrace();
    }

    try {       
        sos.close();
        session.removeAttribute("ReportContent");
    } catch (IOException e) {           
        e.printStackTrace();
    }
}

注:itex.jarとcore-renderer.jarを含めてください

この方法であなたができることを試してください...すべてのベスト...

于 2012-08-07T11:11:07.917 に答える
0

サーバー側でHTML->PDF変換を行い、サーバーコードが既にJavaまたはC#/。NETである場合は、iTextのXMLWorkerを使用できます。これがデモページといくつかのドキュメントです(これは古くなっていますが、すぐに更新されるはずです)。

OTOH、クライアント側で変換を実行したい場合は、PDFプリンターはどうですか?私の個人的なお気に入りはPDFCreatorです。PDFプリンターを使用することはあなたのための解決策にすぎず、あなたのウェブサイトを閲覧しているユーザーのためではないことに注意してください。

于 2012-07-03T13:36:32.117 に答える
0

WKHTMLTOPDFのようなツールをインストールしたくないが、それでも完全なCSS、HTML、およびJavascript機能が必要な場合は、SprintPDFを使用できます。これは、多数のオプションが付属するオンラインAPIです。

于 2012-07-03T15:38:13.257 に答える