- 121 名前:デフォルトの名無しさん mailto:sage [2009/09/10(木) 00:22:48 ]
- >>118
メンドイけど、RichTextBoxを継承して意外と簡単に作れる。 印刷プレビュー付きで300行程度。文字修飾とかイメージとかもOK。 PrintDocument の beginPrint と PrintPage にイベントハンドル登録して、 1ページごとに SendMessage(Handle, EM_FORMATRANGE, wparam, lparam); で印刷用ビットマップにレンダリングしていく。 ちなみに private const int EM_FORMATRANGE = WM_USER + 57; 気をつける点としてタブストップは string tabwidth = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA".Substring(0,tabsize); int iWidth = (int)CreateGraphics().MeasureString(tabwidth, Font).Width; for (int i=0;i<iTabs.Length;i++) { iTabs[i] = iWidth * (i+1); } とかして指定しとかないと悲しい目に。 まあ、勉強の腕試しにちょうどいいサイズと内容。これが作れるなら初心者脱却かな。
|

|