2011-12-24 6 views
3

私はC#で書いているプログラムから出力として文書を印刷する必要があります。純粋なテキストでは十分ではありません - 私はテーブルやフォントの選択などが必要ですC#からデータを印刷するには?

これは非常に簡単に達成できるはずですが、私はそれを行う方法がわかりません。しかし、私はそれらを印刷するかどうかはわからない、

  • DOCX文書を生成するのは簡単です:

    は、ここで私が検討しているオプションです。

  • 明らかに.NETから削除されていますが、依然としてダウンロード可能なCrystal Reportsには機能があるようです。これに関する経験はありますか?
  • イメージやフォームを生成して印刷することができます。しかし、印刷するとテキストが悪く見えます。私は鮮明な手紙が欲しい。
  • 私はXPSを使うことができましたが、これはすべてのプリンタで動作しないと思いますか?このプログラムはプリンタ単位では難しいものではありません。
  • プリンタが理解しているフォーマットを手動で作成し、手動で何とか送信することができます。これはおそらく多くの仕事であり、私はどこから始めるべきかわかりません。

本当に簡単な解決策はありませんか?もしそうでなければ、最良の選択肢は何ですか?

+0

PDFは良い選択肢があります。http://stackoverflow.com/questions/465433/creating-pdf-files-at-runtime-in-c -sharp –

+0

また、Htmlドキュメントを検討する必要があります –

+0

リッチテキストボックスの内容を印刷する場合は、[RichTextBoxPrintCtrl](http://support.microsoft.com/default.aspx?scid=kb;en-us;812425)を使用します。 )コントロールをRichTextBoxとして使用し、画像やフォントの選択肢でコンテンツを印刷します。テーブルについてはわかりません。 – sevenkul

答えて

3

手動でプリンタに送信する必要はありません。 PrintDocument classを使用し、そのイベントを処理して図面を作成するだけです。 GDI +について知っておく必要がありますが、これが最も効果的な方法です。たとえば、RichTextBoxの結果をペイントすることができます。

2

私は本当にITextSharpがPDF文書としてカスタムレポートを作成する方法として好きです。ライブラリはやや複雑で、最初からすべてをビルドする必要があります(Crystalレポートのようなものではありませんが、努力する価値はあると思います)。

あなたは、あなたのサイトの機能性を高めるPDFレポートを保存したり、電子メールで送ったり、ダウンロードしたりすることができます。

私はこのチュートリアルに従うことによって多くのことを達成した:http://www.mikesdotnetting.com/Article/80/Create-PDFs-in-ASP.NET-getting-started-with-iTextSharp

+0

私はこれを使ってPDFに書き出す作業を減らすことができますが、印刷には役立たないようです。 – svinja

+0

PDFを作成し、これを使用してプリンタに送信することができます。私はそれを試していないが、私はあなたのニーズを満たすかもしれないと思う... http://stackoverflow.com/questions/273675/print-existing-pdf-or-other-files-in-c-sharp – agarcian