2016-11-19 4 views
-1

У меня есть форма окна, содержащая таблицу, две надписи над ней и многие другие компоненты под Используя PrintDocument, я хотел бы напечатать таблицу с ее названием и только без отображения других компонентов. This is my formКак напечатать табличную рамку с меткой в ​​форме окна

Код, который я использую, печатает только таблицу.

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

Если вы используете визуальную студию, есть средство просмотра отчетов, которое может быть полезно в этом сценарии. –

ответ

0

В вашем коде печати используйте Graphics.MeasureString, чтобы получить размер текста вашей метки (или используйте высоту надписи), используйте это для смещения вашего растрового изображения (вместо 0, 0), а затем используйте объект Graphics для нарисуйте строку, используя свойства Text, Forecolor и Font метки. Если вы хотите использовать обратную цветную метку, сделайте Graphics.FillRectangle до рисования строки.

Возможно, вам понадобится создать объявление, если текст ярлыка будет автоматически обернут, и вы хотите, чтобы он печатался таким образом.

Смежные вопросы