이것은 itextsharp 라이브러리를 사용하는 vb.net 응용 프로그램입니다. 내가 뭘하고있는 건지 다음 코드가 너무 복잡해져서 제 생각에는 일을 할 수있는 깨끗한 방법이 아니란 것입니다. 하지만 별도의 함수로 분리하는 방법을 알아낼 수없는 것 같습니다. 문자열에서 x_Cord, y_Cord, tilt를 전달하면됩니다. 또는 그것을 전달할 때 하나의 배열을 전달하거나 b) 그것을 필요로하는 각 라인에 대해 수행합니다 ... 함수는 contentBytes에 필요한 정보를 반환합니다 ... 아래는 내가 많이 중복되는 것으로 끝나는 것과 매우 유사합니다. pdf 생성기 함수에서 중복 코드 분리
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()
이 기능을 자체적으로 만드는 것에 대한 아이디어가 있으십니까?