2009-05-29 45 views
4

既存のシステムには多くのレポートがあります。 dopdfやcutepdfのような無料のpdfプリンタを使用すると、ユーザはレポートを開くことができ、pdfプリンタを選択してファイル名を入力し、pdfファイルとしてレポートを保存することができます。ボタンをクリックするだけで直接pdfファイルとして保存されたレポート。 残念ながら、レポートツールコンポーネントはPDFエクスポート機能を持っていません。 。第三者コンポーネントを使用してプログラムでこの機能を実行する方法はありますか?pdfへの印刷

印刷はサイレントにする必要があります。その結果、ユーザーはファイル名を尋ねられません。クリック1をクリックすると、たとえばc:\ 1.pdfというファイルが作成されます。 このようなもの ActivatePdfPrinter(c:\ 1.pdf); printreport; ClosePdfPrinter;

または任意の他の方法。

私はdelphiを使用していますが、他のプログラミング言語で動作する他のツールをお勧めする場合は、正しい方向に検索することができます。あなたは、あなたのレポートを生成する方法を言うことはありませんが、Gnosticeが、そのあなたに役立つのかもしれない多くのツールを持っている Report Builder Export Devices

+1

タグに 'dotnet'を使用しないでください。代わりに '.net'を使用してください。あなたの質問にタグを付ける際のプロンプトプロンプトに注意してください。おそらく名前を避けてください。 –

答えて

0

PragnaanはReportBuilder用のPDFエクスポートデバイスを持っています。

+0

こんにちはStijn、あなたの返事をありがとう。しかし私はそれが私たちに既存のレポートをすべてreportbuilder isntに変換する必要があると思いますか?または私は間違って理解している? – Anna

+0

私が推測したように、使用しているレポートツールは実際には述べていません。 –

0

+0

こんにちはSimon、システムには約120のレポートがあり、そのうちのいくつかはquickreport、一部のreportbuilderバージョン5、gnosticeは新しいreportvuilderバージョンのみをサポートしています。その理由は、レポート作成者 – Anna

+0

Anna Gnosticeクイックレポートにも変換するのが面倒なことです。特にeDocEngine製品を見る必要があります。 http://www.gnostice.com/eDocEngine_VCL.asp#goto_3rd-Party___Reporting_tools_Support –

+0

私が思うようなレポート形式が混在していると、他の人も触れたように、プリンタルートを下ることが最善の方法です。 –

0

Stijn Sandersの返信をフォローアップ:Digital MetaphorsのReportBuilderの最新バージョンには、PDFのネイティブPDFエクスポートと「サイレント」保存、レポートの電子メール送信機能が追加されました。ただし、すべてのレポートをReportBuilderに変換する必要があるという点では正しいです。ただし、プロジェクトのレポートの複雑さや数によっては検討する価値があります。私たちはRave Reportsから私たちを変え、決して振り返ったことはありません。

+0

こんにちはJohn、ありがとう。私は最後の手段としてこれを調べなければならないでしょう。システムは約120のレポートを持っているので、レポートビルダー – Anna

1

Adob​​e Acrobat Professionalをインストールし、プリンタとして「Adobe PDF」を選択します。

0

私はPDFFactoryを使用します。仮想プリンタのように他のソフトウェアと同様のソフトウェアが動作していますか。 非常に高価ではありません。 特に、Windowsレジストリを使用していくつかのパラメータを制御して、ユーザーの介入なしに文書を印刷できることです。

私はDelphiアプリケーションで使用しています。

  1. デフォルトのプリンタ(PDFFactory)
  2. を選択し、ファイル名を書いてください...印刷するレジストリキー
  3. 送信に。

ユーザは何も書き込まず、設定ウィンドウを表示しないでください。

+0

完璧な回答Neftaliに変換するのはちょっと面倒な理由です、私はこれを使用します。私はこれが私の問題を解決すると思う。ありがとうございました – Anna

+0

これは、説明detailledリンクです。 http://www.fineprint.com/developers/index.html –

+0

PDFの工場へのリンクは現在http://fineprint.com/pdf/ –

0

アンナ、コメントの脇に、ReportBuilderの古いバージョンを使用していると言います。Waler TExtraDevicesコンポーネントを見ましたか?私はそれを手にする必要はありませんが、私たちがReportBuilderからPDFに出力するためにこれを使用した日に思い出し、ReportBuilderがテキストデバイスだと思うため、プレビューやプレビューなしでこれを行うことができますエンドユーザの側での対話。

あなたはQuickReportとExcelで動作する汎用の方法を探しています。私は本当にあなたが何らかの「PDFプリンタ」になり、あなたのレポートをこの「名前付きプリンタ」に強制するつもりだと思っています。ドキュメントのタイトルなどから出力ファイル名を取得するように、PDF Factoryを設定することは可能かもしれませんが、試してみても、ユーザーのやりとりが少しでもあると思います。 :-(

、私はあなたがすることを選択したものを見て興味があると思います。これは私が自分自身を持っていたし、非常に満足のいく解決策を管理したことがない問題であると私たちは、あなたが何をすべきか知っているか!

+0

こんにちは、ロブ、入力いただきありがとうございます。私はNeftalisの答えが好きです、私はそれが私の問題を解決すると思います – Anna

8

無料、オープンソースPDFCreatorは仮想プリンタとして機能することができますが、それはCOM経由でも使用可能なのデフォルトの設定でもCOMの例が含まれ

あなたは右ここSourceForgeのSVNリポジトリにCOMのサンプルを確認することができます。。http://pdfcreator.svn.sourceforge.net/viewvc/pdfcreator/trunk/COM/

DelphiとActiveXはうまく連携していますので、大きな問題はないはずです。

+0

Mihaiは万人に感謝します。私はこれが素晴らしい解決策になると思います。 – Anna

+0

ようこそ、これは助けてくれてうれしいです。 –

+1

+1 - この方法は、一般的なケースで非常にうまく動作し、この特定の製品で自分自身を実行したものです。 PDFBoxやGnosticeなどのPDF固有のツールを使用する方が良い非常に大きな文書(数千ページ、非常に小さなフォントを使用していました。 – skamradt

0

Win2PDFには、print to PDF with no user interactionのレジストリAPIもあります。 DelphiからPDFファイルに "PDFFileName"レジストリキーを設定し、Win2PDFプリンタに印刷するだけです。