Распечатать WinForms TextBox с форматированием вкладок - PullRequest
0 голосов
/ 20 июня 2010

Я работал над кодом, который печатает текстовое поле со списком контактной информации.Когда я пытаюсь распечатать его, он не распечатывает вкладки, которые я использовал для форматирования текста.Вот мой код:

Private Sub PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs) _
Handles prndoc.PrintPage

    Dim fnt As Font = resultTextBox.Font
    ev.Graphics.TextRenderingHint = Drawing.Text.TextRenderingHint.AntiAlias

    Dim area As SizeF = New SizeF(ev.MarginBounds.Width, ev.MarginBounds.Height)
    Dim lines, chars As Integer
    ev.Graphics.MeasureString(resultTextBox.Text.Substring(mStringPos), fnt, _
                              area, StringFormat.GenericTypographic, chars, _
                              lines)

    Dim rc As New RectangleF(ev.MarginBounds.Left, ev.MarginBounds.Top, _ 
                             ev.MarginBounds.Width, ev.MarginBounds.Height)
    ev.Graphics.DrawString(resultTextBox.Text.Substring(mStringPos, chars), _
                           fnt, Brushes.Black, rc, _
                           StringFormat.GenericTypographic)

    mStringPos += chars

    ev.HasMorePages = mStringPos < resultTextBox.Text.Length
End Sub

Может кто-нибудь сказать мне, что я делаю неправильно?

1 Ответ

0 голосов
/ 20 июня 2010

Что произойдет, если вы сделаете это?

Dim fmt as StringFormat
fmt = StringFormat.GenericTypographic
fmt.SetTabStops( -- put something here --  )
ev.Graphics.DrawString(resultTextBox.Text.Substring(mStringPos, chars), _
                           fnt, Brushes.Black, rc, _
                           fmt)

Это что-то меняет? (Проверьте мой синтаксис - я обычно не делаю VB.)

...