関数DrawEdgeおよびDrawText(http://msdn.microsoft.com/en-us/library/ms534882.aspxおよびhttp://msdn.microsoft.com/en-us/library/ms533909.aspx)。それらは非常にうまく機能します、しかし、私が私の紙の底(それから約35ミリメートル離れたところ)に到達しようとすると、線は単に引かれなくなります。これが私のプリンターの限界だと思いました。しかし、私がテキストを描くとき、私のプリンターはそこに問題なく印刷できます。DrawEdgeがそこに線を引く方法はありますか?これを行う別の方法はありますか?これはバグですか?
1517 次
1 に答える
1
いくつかの理由が考えられます:
テキストを描画している場合は別のエッジを描画している場合は、クリッピング領域が設定されています。
クリッピング領域が設定されていますが、プリンターが一貫してテキストをクリッピングしていません。一部のプリンタは、文字の一部のみがクリッピング領域内にある場合でも、文字全体を印刷します。
GetDeviceCaps
withを使用して、テキスト クリッピング機能を確認できますTEXTCAPS
。この場合、クリッピング領域のすぐ下に印刷されているテキストは表示される可能性がありますが、他の種類のグラフィック (線など) は切り取られます。ページの印刷可能領域について間違っています。これはどのタイプのプリンターですか。多くのプリンターは、下端から 35 mm 以内に印刷できません。ドライバーは印刷可能領域として何を報告しますか? ( と を使用
GetDeviceCaps
してPHYSICALOFFSETY
、PHYSICALHEIGHT
実際に印刷できるページの低さを決定します。)
幸運を!
于 2009-09-29T15:28:37.637 に答える