Отделение избыточного кода от функции генератора PDF

Это приложение vb.net, которое использует библиотеку itextsharp. То, к чему я прибегаю, это то, что следующий код становится ужасно избыточным, что, по моему мнению, не является чистым способом сделать что-то. Но я не могу понять, как разделить его на отдельную функцию, в которой я просто передам строку x_Cord, y_Cord, tilt и получу ее либо a) при передаче ее в нее входит как массив или б) делает это для каждой строки, которая нуждается в этом ... Функция будет затем возвращать необходимую информацию для contentBytes ... Ниже очень похоже на то, что я заканчиваю тем, что сильно избыточен.

Dim cb As PdfContentByte = writer.DirectContent

Я включил выше, просто чтобы показать, что cb объявлен для ясности.

cb.BeginText()
cb.SetFontAndSize(Californian, 36)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "CERTIFICATE OF COMPLETION", 396, 397.91, 0)
cb.SetFontAndSize(Bold_Times, 22)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, name, 396, 322.35, 0)
cb.SetFontAndSize(Bold_Times, 16)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, _hours + " Hours", 297.05, 285.44, 0)
cb.SetFontAndSize(Bold_Times, 16)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, _dates, 494.95, 285.44, 0)
cb.SetFontAndSize(Bold_Times, 16)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, _class1, 396, 250.34, 0)
If Not String.IsNullOrWhiteSpace(_class2) Then
    cb.SetFontAndSize(Bold_Times, 16)
    cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, _class2, 396, 235.34, 0)
End If
cb.SetFontAndSize(Copper, 16)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, _conf_num + _prefix + " Annual Conference " + _dates, 396, 193.89, 0)
cb.SetFontAndSize(Bold_Times, 13)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "Some Name", 396, 175.69, 0)
cb.SetFontAndSize(Bold_Times, 10)
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "Some Company Manager", 396, 162.64, 0)
cb.EndText()

Любые идеи по превращению этого в свою функцию?

Ответы на вопрос(1)

Ваш ответ на вопрос