#vb.net #printing #graphics
#vb.net #печать #графика
Вопрос:
Я понятия не имею, что не так с моей конструкцией во второй графике.Строка кода DrawString
Мой вопрос в том, почему построение этой строки кода ЗАВЕРШАЕТСЯ НЕУДАЧНО, а строка над ней не завершается сбоем
, это НЕУДАЧНАЯ строка кода
e.Graphics.DrawString(strTo, 12, Brushes.Red, 45, 50)
Private Sub pdDoc_PrintPage(sender As Object, e As Printing.PrintPageEventArgs) Handles pdDoc.PrintPage
Dim fontSize As Integer = 30
Dim labelFont As Font = New Font("Times New Roman", fontSize, FontStyle.Bold)
Dim strTo As String = "Kitchen"
Dim lblArray(2) As String
lblArray(0) = "Kitchen"
e.Graphics.DrawString(lblArray(0), labelFont, Brushes.Black, 500, 950)
e.Graphics.DrawString(strTo, 12, Brushes.Red, 45, 50)
После прочтения двух ответов и вот мое обновленное ИСПРАВЛЕНИЕ ошибки в строке кода выше
Dim labelFont As Font = New Font("Times New Roman", fontSize, FontStyle.Bold)
Dim strTo As Object = "Kitchen"
e.Graphics.DrawString(strTo.ToString, labelFont, Brushes.Red, 300, 300)
Комментарии:
1. Для дальнейшего использования, пожалуйста, всегда точно определяйте «сбой», «ошибка», «это не работает» или аналогичные
Ответ №1:
Я взял на себя смелость выровнять ваши запятые между рабочими и нет:
e.Graphics.DrawString(lblArray(0), labelFont, Brushes.Black, 500, 950)
e.Graphics.DrawString(strTo , 12 , Brushes.Red , 45 , 50 )
^^^^^^^^^
Что это такое Font
12
?
Комментарии:
1. Хорошо, было поздно, и я пробовал все labelFont было плохим соглашением об именах, оно было из другого проекта, где я печатал этикетки, как указывалось, термин FAIL не описывал, где и как код был нарушен В этом случае в двух местах strTo и 12. Я опубликую свое ИСПРАВЛЕНИЕ вВОПРОС спасибо
Ответ №2:
Первое DrawString
в порядке, но второе неверно.
public void DrawString (string s, System.Drawing.Font font, System.Drawing.Brush brush, float x, float y, System.Drawing.StringFormat format);
@CaiusJard уже определил ошибку, поэтому я уточняю подробнее.
Здесь он принимает объект шрифта, а не целое число. К 12, я думаю, вы перепутали с размером. Сначала вы можете объявить объект шрифта с:
Dim myFont As Font = New Font("FONT NAME",12)
Тогда вы можете использовать myFont
вместо 12.
Комментарии:
1. У меня было время, когда он вызывал построенные вспомогательные устройства, и у меня появилась плохая привычка избегать их. Теперь я понимаю, что две ошибки были с strTo и 12 ДА, я был размером вещи и не использовал код создания для определения шрифта объекта. Я опубликую свое ИСПРАВЛЕНИЕ в вопросе Спасибо за объяснение