web-dev-qa-db-ja.com

JavaScriptを使ってPDFファイルを生成する

WebページからXMLデータをPDFファイルに変換しようとしていますが、これをすべてJavaScript内で実行できることを望みました。私はテキスト、画像そして簡単な形を描くことができる必要があります。私はこれをブラウザで全部できるようにしたいと思います。

235
amoeba

私はちょうどJavaScriptを使ってPDFを生成する jsPDF というライブラリを書きました。それはまだ非常に若いです、そして私は機能とバグ修正をすぐに追加するでしょう。また、データURIをサポートしていないブラウザでの回避策についていくつかのアイデアを得ました。それは自由なMITライセンスの下でライセンスされています。

私がそれを書き始める前に私はこの質問に出くわしました、そして私が戻ってきてあなたに知らせることを考えました:)

JavascriptでPDFを生成する

例 "Hello World" PDFファイルを作成します。

// Default export is a4 paper, portrait, using milimeters for units
var doc = new jsPDF()

doc.text('Hello world!', 10, 10)
doc.save('a4.pdf')
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.5/jspdf.debug.js"></script>
393
James Hall

言及する価値があるもう1つのJavaScriptライブラリはpdfmakeです。

ブラウザのサポートは、jsPDFほど強力ではないようでも、図形のオプションもないようですが、テキストのフォーマットのオプションは、jsPDFで現在利用可能なオプションよりも高度です。

120
mg1075

私は PDFKit を維持しています。これはpdfmake(既にここで言及されています)にも力を与えます。これはNodeとブラウザの両方で動作し、他のライブラリがしていないことをサポートしています。

  • Unicodeをサポートした、サブセット化されたフォントの埋め込み.
  • 高度なテキストレイアウトのもの(カラム、改ページ、Unicodeの完全改行、基本的なリッチテキストなど)。
  • 高度なタイポグラフィ(OpenType/AAT合字、文脈上の代替など)のためのさらに多くのフォントについての作業。近日公開予定:興味があればfontkitブランチを見てください。
  • その他のグラフィック素材:グラデーションなど.
  • Browserifyやストリームのような最新のツールで構築されています。ブラウザとノードの両方で使用できます。

PDFKitが何をできるかを自分で確かめるための完全なチュートリアルは、 http://pdfkit.org/ を参照してください。そして、どのような種類の文書を作成できるかについては、PDFKit自体を使用して、いくつかのMarkdownファイルからPDF generated として文書をチェックアウトします。 http:// pdfkit.org/docs/guide.pdf .

こちらのブラウザでインタラクティブに試すこともできます。 http://pdfkit.org/demo/browser.html

52
devongovett

他の興味深いプロジェクトは texlive.js です。

ブラウザで(La)TeXをPDFにコンパイルすることができます。

7
Kpym

あなたは任意のURLからpdfを作成するリンクを追加することによってこの無料サービスを使用することができます(例えば http://www.phys.org ):

http://freehtmltopdf.com/?convert=http%3A%2F%2Fwww.phys.org&size=US_Letter&orientation=portrait&framesize=800&language=ja

2
boateng