• ベストアンサー

C#での印刷機能に関して

C#での印刷機能に関して C#を用いて開発を行っていますが、その中で印刷ボタンを設け、印刷処理 を行いたいと考えています。 印刷自体の処理はある程度調べて実現しましたが、フォーマットを指定して 出力したいと考えています。 例えば、、、この位置にこの変数の値を出力したい等。。。 アクティブレポートのようなツールを購入すれば可能かと思われますが、標準 のVisualStudio2008の機能で実現できないかと考えて います。 何か良い方法はありますでしょうか。。。 初歩的な質問で申し訳ありませんが、教えて下さい。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mnabe
  • ベストアンサー率33% (427/1283)
回答No.1

やはり楽して綺麗に印刷したいと言う事なら、ツールの購入を検討されるべきだと思います。 そうでなく、取り敢えず印刷されればいいやぁって感じなら System.Drawing.Printing.PrintDocument() を使って、出来た PrintDocument に対して、印刷した物を置いていけば印刷する事は出来ます。 詳しいコードは、検索すれば出てくるので、割愛しますが、これで綺麗に印刷しようと思うとかなり苦労しますが、出来ます。 後、出来れば、作っているアプリケーションの形態を教えて欲しいですね。 Webアプリケーションだとしたら違う方法になりますからね。

yurix_1
質問者

補足

ご回答ありがとうございます。 やはり難しいですか、、、現在はVisualStudio2008で開発しており、 WEBではなく、クライアント/サーバ型にしています。 ツールでも購入という事ではなく、フリーとかではないでしょうか??? また、アクセスに連携させ、アクセスで帳票だけOUTPUTさせるというような方法 もないでしょうか??? 教えて頂ければ幸いです。 よろしくお願いします。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 印刷機能について

    ダイレクトメールとして使う封筒が3種類あります。 3種類のプリンタがあります。 アクティブレポートで3種類のフォーマットを作成しました。 それぞれのフォーマットを選んで実行した場合にそれぞれのプリンタが動いてほしいです。 要約しますとVBで「現在標準で指定されているプリンタ」の変更などはできますでしょうか? よろしくお願いします。 使用している帳票ツール:Active Report Ver3.0

  • ASP.Net 印刷機能

    お世話になります。 Accessで作成してあるアプリケーションをASP.Netにて作り直しております。 ここで質問させていただき、GridView、ObjectDataSource、その他大変勉強になっております。 ある程度の機能が作成できましたので、それらの機能に付随する印刷物を作成をしております。 ここで質問なのですが、 (1) レポートでのフッターでページフッターしかないのですが、レポートフッター(最後のページ)のみ   出力させたいのですが、Accessのようにはいかないでしょうか?   行グループがあるようですが、この辺りを使う感じになるのでしょうか? (2) レポートのフィールドで、自作のクラス関数などを使用したいのですが、これはaspxファイルに   レポートビュアーを張り付けた後にレポートクラスのフィールドとして使用する感じになるのでしょうか? レポートに関して、あまり情報がネットにないのでAccessでは簡単に実現できていた事をASP.Netで実現させようとするとこれほど難しいのかと思う次第でございます。 レポートの詳細が記されているサイト、書籍などもご紹介いただけますと大変嬉しい限りでございます。 何卒よろしくお願いいたします。

  • 【デバッグ】変数の値が変わるとブレーク、ある値になったときにブレーク

    VC++2005で、ウオッチウインドウに変数を表示させる方法はわかりますが、ある変数の値が変わったりとか、ある値になったときにブレークする機能ってあるのでしょうか? ※昔、何かの開発ツールでそのような機能を見たことがあったので・・・

  • C,C++に変数の初期化と処理系について

    C,C++で変数宣言したけれども初期化しないで使った場合、何らかの値を出力してしまう場合とかエラー(core dumpなども)を出して停止する場合など処理系依存ということになると思います。また、別言語ではデフォルトでゼロ指定される場合もあります。これは自動初期化とい意味で初期化がされているものに分類されます。 処理系で初期化しないで変数を利用して適当な値を出すという風になっているとしたらその理由とかメリットというのがあるものでしょうか。core dumpで処理が停止するというのは当然であり、良心的とも言えるわけで、適当な値を出すことは危険極まりないと思うのですが。 Windowsで、分子・分母の変数を定義しないで割り算したところ、256な数値が出ました。 Linuxではcore dumpになるところだと思います。 初期化して使え、ということを徹底するべきですが、逆に初期化しないでも(すなわち変数としてどのアドレスに対応しているか不明であっても?)計算を進めてしまうメリットがどこかにあるのか?という疑問が生じます。 いかがでしょうか。そこが分かれば尚更変数を初期化して使う習慣が身に着くと思うわけですが。

  • C#での定数の取得方法

    変数内に格納された定数名を使用して、その定数の値を取得する事は可能でしょうか? PHPでは「CONSTANT」を使用する事で実現できそうなのですが、C#で同様の機能はありますでしょうか? よろしくお願いいたします。

  • MACでのプログラミング C#など

    前回の質問でMACでの開発にPHP、JAVA、JSは問題ないということはわかりました。 http://okwave.jp/qa/q7928891.html C言語について ObjectCはC言語を拡張したものでC言語に機能を追加したようなものだと聞きました。 そうすると、MACではC言語の開発は出来るのでしょうか? 次にC#について 「Mono」を使ってC#を勉強するだけなら問題なくて、開発となるとVisualstudioの入っているWindowsが良い、ということですね。 ではMonoを使って開発した場合そのコードをVisualstudioに貼り付ければ動作するのでしょうか? わかる方教えて下さい。

  • PowerPoint2007を使った、年賀状の印刷についてです。

    PowerPoint2007を使った、年賀状の印刷についてです。 作りやすさなどを理由に、Wordではなく、PowerPoint2007で年賀状を作りました。 そのスライドを印刷する上で、気を付ける必要があることはありますか? スライドのサイズをpngなどに出力しても綺麗になるように 20×29.6に設定しているのですが、 このままプリンタの用紙設定をはがきにすればいいでしょうか? pngなどに出力してからのほうがいいでしょうか? その場合、WindowsXP標準の印刷機能でいいでしょうか? 初歩的なことですみません。 お願いします。

  • C++の問題

    このプログラムを実行し、値234,453290453294をfloatとdoubleで定義した変数に代入して、画面に出力した時、どうなるか?実行結果にはどのような結果違いが発生し、なぜそうなるのかの理由を述べよ 文字変数aにbという文字、文字変数cにdという文字を代入して、変数aとcを使って、dbと出力するプログラムを作成せよ 誰かこれ助けてくれませんか

  • C++ bmp 透過処理

    標準C++で画像フォーマットはビットマップです。 画像Aの上に画像Bを乗せる。 画像Bの特定の色を透けさせる。 その透けた部分だけ画像A、それ以外は画像Bが表示される。 といった処理を実現したいです。 どのようにすればよろしいでしょうか。

  • VisualStudio2005で中断した際の変数参照値がおかしい。

    VisualStudio2005で中断した際の変数参照値がおかしい。 お世話になります。ちょっと言葉がみつからなくて、説明がめちゃくちゃになってしまいそうですが、よろしくお願いします。 現在、VS2005でC++の開発を行っているのですが、あまり深い開発をしたことが無く、VSの環境設定や機能などをいじったことが一度もありません。そのせいなのかは分かりませんが、ソースの流れを追う為に、ブレークポイントで中断して、変数の値を参照できる機能で(この機能をどう呼ぶのかも知りません)、変数の中身をチェックしていたのですが、どうにも参照できた値がおかしいのです。 例えば、 int i=0; int j=0; for(i=0;i<5;i++){ j++; //ここでブレーク } という簡単なソースを実行させます。そしてiとjの値を参照すると、中身が「i:40196」「j:40265」という感じになってしまいます。ポインタか何かの値になってしまっているのかと思ったのですが、それらしきものも見当たりません。ちなみにループはちゃんと回数分回ります。 ほかにも、変数そのものが参照できなかったり、ソースそのものはちゃんと動作しているのに、値が「不適切です」になっていたり……。 これはVS2005の環境設定ミスなのでしょうか。それとも私が根本的に間違っているのでしょうか。動作しないならまだいいのですが、正常に動いてしまうから混乱しています。 分かりづらい文章ですが、よろしくお願いします。