14

インタラクティブなクライアント側のthingamabobにSVGを使用するWebサイトがあります。完成した出力の PDF をダウンロードするオプションを提供したいと思います。最終的な SVG 出力をサーバーに戻し、そこで PDF に変換してから、クライアントに戻してダウンロードすることができます。

これは、インストールまたはコンパイルが非常に面倒であるか、不可能であるヘッドレス共有 Linux サーバーで動作する必要があります。Web サイトは PHP であるため、理想的なソリューションは PHP か、共有 Web サーバーに簡単にインストールできるソフトウェアを使用することです。Python、perl、および ruby​​ が利用可能で、Linux ボックスで期待される通常の機能も備えています。cairo、スクリプトのinkscape、または「FTP it up」よりも複雑なインストールを含むソリューションはおそらく出ていません。当然、多額のお金を使うこともアウトです。これは共有サーバーであるため、メモリや CPU を大量に消費するソリューションも廃止されています。これは多かれ少なかれバティックを除外します。

私がこれまでに得た最も近いものは、この XSL 変換です。これは、PHP から駆動し、ps2pdf (既にインストールされています) を介して結果のポストスクリプトを噴出することができます。これに関する唯一の問題は、SVG パスがサポートされていないことです。サポートされていれば完璧です。

StackOverflow にはたくさんの、または関連する質問があり、私はそのすべてを読みましたが、それらはすべて、何かをインストールするか、お金を使うか、またはその両方ができることを前提としています。

誰かがこれに対する既製のソリューションを持っていますか、またはその XSL 変換にパスのサポートを追加しようとしてダウンタイムを費やす必要がありますか?

ありがとう、ダンク

4

5 に答える 5

16

私は今日、TCPDF に出くわしました。これは、純粋な PHP クラスの単なるコレクションであり、ほとんどのものに対する外部依存関係はありません。

次の例に示すように、ゼロから PDF を作成でき、SVG (他の多くのものの中でも) を含め、そこに必要なものをほとんど含めることができます。

http://www.tcpdf.org/examples.php

プロジェクトのメインページはこちら:

http://www.tcpdf.org/

ソースフォージのページはこちら:

http://sourceforge.net/projects/tcpdf/

于 2010-06-29T09:15:33.233 に答える
3

トランスコーダーAPIを備えたApacheFOP無料の BatikSVG ツールキットを使用して、SVGをPDFに変換できます。

ダウンロードリンク

Javaを少し書く必要があります。ここにコード例があります–Javaorg.apache.fop.svg.PDFTranscoderの代わりにトランスコーダーを設定する必要があることに注意してください。

マシンに何もインストールせずにこれを実行できるはずです。そこにjarをドラッグして、スクリプトを実行するだけです。私は引用します:

バティックが必要とする他のすべてのライブラリは、ディストリビューションに含まれています。結果として、Batikアーカイブは非常に大きくなりますが、ダウンロードした後は、他に何も必要ありません。

于 2010-01-28T14:23:35.500 に答える
2

imagemagickを見たことがありますか?ループを完了するにはゴーストスクリプトも必要だと思います。これにより、インストールが困難になり、パフォーマンスが問題になる可能性があります。

于 2010-01-27T01:36:56.633 に答える
2

princexmlを試してみることをお勧めします。さまざまなアドオン(PHP 用を含む) が提供されており、SVG/HTML/XML から PDF を出力できます。

于 2010-01-27T11:31:01.370 に答える