- - PR -
Graphics.PageUnit=Displayの場合の単位はほんとに1/75インチ?
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-10-25 21:02
PrintDocumentを使用して印刷していますが不可解な現象に遭遇したのでお知恵をお貸しください。
Graphics.PageUnit=Displayである状態で DrawRectangle(Pens.Black,10,10,75,75)とやると一辺が1インチの正方形が描けるはずですよね? 1/75(インチ/単位) * 75(単位) = 1インチですよね? ところが実際には3/4インチの正方形が印刷されます。 DrawRectangle(Pens.Black,10,10,100,100)とやると一辺が1インチの正方形になります。 私はなにか大きな勘違いをしているのでしょうか? | ||||||||
|
投稿日時: 2005-10-26 12:10
Graphics.PageUnit=Displayの場合の単位は1/75インチなんかじゃありません。
ディスプレイとプリンタで検証しました。 ディスプレイの場合はピクセルが単位となり プリンターの場合は1/100インチが単位となっています。 (VB.net2003です) 以下検証コードです。 フォームにPrintDocumentとPictureBoxをはりつけて
[ メッセージ編集済み 編集者: ジブ 編集日時 2005-10-26 12:19 ] [ メッセージ編集済み 編集者: ジブ 編集日時 2005-10-26 12:21 ] | ||||||||
|
投稿日時: 2005-10-26 12:24
そこらへんの詳しい情報は
http://www.microsoft.com/japan/msdn/net/books/ProgWinCsharp/default.asp にのってたと思います。 # 前読んだけど忘れてしまった… | ||||||||
|
投稿日時: 2005-10-26 13:18
ちなみに、.NET 2.0のリファレンスではDisplayの解説にしっかり
と書かれてたり。 | ||||||||
|
投稿日時: 2005-10-26 13:49
あ、ほんとだ、直ってる。 なんでこっちのほうは直さないんだろう? http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemdrawinggraphicsunitclasstopic.asp Hongliangさん、ありがとうございました。 |
1