Автор: Omicron_Persey_8
Дата сообщения: 02.04.2009 13:27
avkorets
Это придется самому руками измерять длинну печатаемой строки при помощи Graphics.MeasureString()
Вот пример из MSDN:
Код: private void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
int charactersOnPage = 0;
int linesPerPage = 0;
// Здесь мы считаем, сколько символов заданным шрифтом
// уместится на странице
e.Graphics.MeasureString(stringToPrint, this.Font,
e.MarginBounds.Size, StringFormat.GenericTypographic,
out charactersOnPage, out linesPerPage);
// Рисуем строку
e.Graphics.DrawString(stringToPrint, this.Font, Brushes.Black,
e.MarginBounds, StringFormat.GenericTypographic);
// Обрезаем часть строки, которую уже напечатали
stringToPrint = stringToPrint.Substring(charactersOnPage);
// Check to see if more pages are to be printed.
e.HasMorePages = (stringToPrint.Length > 0);
}