2016-11-19 13 views
-1

テーブルがあり、その上に2つのラベルがあり、その下に他の多くのコンポーネントがあるWindowsフォームを持っています PrintDocumentを使用して、タイトルが付いたテーブルを印刷したい他の構成要素を示さない。 This is my formtablayoutpanelをWindowsフォームでラベル付きで印刷する方法

私が使用するコードは、表のみを印刷します。

Bitmap printImage; 
private void CaptureScreen() 
{ 
    printImage = new Bitmap(tableLayoutPanel1.Width, tableLayoutPanel1.Height); 
    tableLayoutPanel1.DrawToBitmap(printImage, new Rectangle(0, 0, printImage.Width, printImage.Height)); 
} 

private void printDocument1_PrintPage(object sender, PrintPageEventArgs e) 
{ 
    e.Graphics.DrawImage(printImage, 0, 0); 
} 

ラベルはどのように組み合わせますか?

+0

Visual Studioを使用している場合は、このシナリオで役立つレポートビューアがあります。 –

答えて

0

Graphics.MeasureStringを使用してラベルテキストのサイズを取得(またはラベルの高さを使用)し、ビットマップをオフセット(0,0の代わりに)してGraphicsオブジェクトを使用してラベルのText、Forecolor、およびFontプロパティを使用して文字列を描画します。ラベルの背景色を使用する場合は、文字列を描画する前にGraphics.FillRectangleを実行します。

ラベルテキストが自動ラップされ、そのように印刷する場合は、クリエイティブにする必要があります。

関連する問題