![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
C# 印刷可能領域と余白範囲の関係?
プリンタで印刷出来る最大画像を出力したい
そこで余白範囲を印刷可能範囲まで拡大した
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{
MessageBox.Show("余白範囲 変更前" + "\r\n" +
" left " + e.MarginBounds.Left + "\r\n" +
" right " + e.MarginBounds.Right + "\r\n" +
" width " + e.MarginBounds.Width + "\r\n" +
" top " + e.MarginBounds.Top + "\r\n" +
" bottom " + e.MarginBounds.Bottom + "\r\n" +
" height " + e.MarginBounds.Height + "\r\n");
余白範囲を印刷可能範囲まで拡大
e.PageSettings.Margins.Left = (int) e.Graphics.VisibleClipBounds.Left;
e.PageSettings.Margins.Right = (int)e.Graphics.VisibleClipBounds.Right;
e.PageSettings.Margins.Top = (int)e.Graphics.VisibleClipBounds.Top;
e.PageSettings.Margins.Bottom = (int)e.Graphics.VisibleClipBounds.Bottom;
このようにしても前後のメッセージの値は同一でした
MessageBox.Show("余白範囲内 変更後" + "\r\n" +
" left " + e.MarginBounds.Left + "\r\n" +
" right " + e.MarginBounds.Right + "\r\n" +
" width " + e.MarginBounds.Width + "\r\n" +
" top " + e.MarginBounds.Top + "\r\n" +
" bottom " + e.MarginBounds.Bottom + "\r\n" +
" height " + e.MarginBounds.Height + "\r\n");
}
どうやら余白範囲はReadOnlyらしい
そこで疑問???
(1)余白範囲を超えても印刷可能範囲ならば、全てのプリンタで画像がチョン切れることはないのだろうか?
(2)そうならば余白範囲は何のためにあるのでしょうか? その存在目的は?
毎日印刷テストを繰り返し、無駄なインクと紙を浪費している私と『 母なる地球 』をお救いください!!!
No.1ベストアンサー
- 回答日時:
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
{}
まず、これは印刷を開始後に発生するイベント
ですよね
いわば、印刷中であるといえるでしょう
印刷中に、プログラムが余白を設定する意味は無いので
ReadOnly なのでは無いでしょうか
分かりやすく書くと、EXCELを思い浮かべてください
印刷前にプレビュー等をだして余白を設定しますよね
その後、印刷を行うと
1ページ目も2ページ目もすべて、同じ余白の中に印刷されます。
なので、余白の設定は、
[プリンタドキュメント].Print(); を行う前
[プリンタドキュメント].DefaultPageSettings.Margins で設定して
printDocument1_PrintPage(~略~)
内では、その設定された範囲で印刷を行う
と、すべて同じ余白で印刷されます
って意味だと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- オープンソース cssで中央寄せ 1 2023/05/19 06:25
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
- HTML・CSS スクロールすると追従する画像のコードを書いているのですが、追従する画像の大きさの調節が上手くいきませ 2 2022/04/18 12:52
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS ヘッダーの画像にメインエリアがかぶってしまいます 1 2022/11/28 14:06
- Excel(エクセル) エクセルシートのPDFでの保存 2 2022/09/06 13:05
- Excel(エクセル) エクセルVBAで複数のシート印刷設定 1 2022/09/07 12:03
- その他(Microsoft Office) エクセルのマクロでスライサー教えてください。 1 2022/09/28 16:40
- JavaScript jQueryでのドラッグアンドドロップについて 1 2022/07/30 09:10
- Visual Basic(VBA) 【VBA】写真の貼り付けコードがうまく機能しません。 5 2022/09/01 18:43
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCEL VBA 印刷プレビューダイ...
-
印刷するときにテキストボック...
-
サイト全体を縮小して印刷する...
-
PDFファイルを開かずに印刷...
-
ページ内にスクロールバーのあ...
-
excelにて各シートの総印刷ペー...
-
Excel VBAで文字列の可視長を得...
-
CSSのfloatでレイアウトしたペ...
-
EXCEL VBAでPDFファイルを開い...
-
印刷プレビュー表示後ユーザー...
-
クリスタルレポートでプレビュ...
-
phpについてですかね、印刷ボタ...
-
VB.netで印刷
-
IE7の印刷サイズの設定について
-
PageBreaks.Countと印刷範囲の...
-
VBAで Ctrl + Shift + F2が使え...
-
CSS+XHTMLで作成のページが画面...
-
インラインフレームの印刷について
-
印刷時に2ページ以上になる時CS...
-
HTMLのテーブル枠が印刷されない!
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PDFファイルを開かずに印刷...
-
EXCEL VBA 印刷プレビューダイ...
-
Excel VBAで文字列の可視長を得...
-
EXCEL VBAでPDFファイルを開い...
-
コマンドプロンプトでフォルダ...
-
excelにて各シートの総印刷ペー...
-
ACCESS VBA レポートプレビュー...
-
サイト全体を縮小して印刷する...
-
ヘッダやフッタの印刷をしたくない
-
PageBreaks.Countと印刷範囲の...
-
ページ内にスクロールバーのあ...
-
Excel VBA 「印刷中」メッセー...
-
ページ内の画像印刷について
-
横に長いWeb画面を一枚の用紙に...
-
検索画面に表示される広告について
-
ランディングページの数え方が...
-
ラジオボタンをチェック済みの...
-
C# 印刷可能領域と余白範囲...
-
ACCESSで印刷プレビューをした...
-
インラインフレームの印刷について
おすすめ情報