Сбросить страницы для каждой записи iText

70
5

Я пытаюсь сбросить размер каждой записи в формате pdf, что является общей страницей

(1 of pagesize
2 of pagesize.......)

1-й блок-код работает для одной отдельной записи, но затем, когда он попадает на несколько записей, он показал:

1 of 0     //1st record
2 of 0
1 of 0 //2nd record

.......

Я думаю, что есть что-то делать с document.setPageSize(), но оно является логическим и относится к Rectangle.

Пожалуйста, помогите мне решить эту проблему. Спасибо.

Public Overrides Sub onEndPage(ByVal writer As PdfWriter, ByVal document As Document)

Dim page As Rectangle = document.getPageSize()
Dim cb As PdfContentByte = writer.getDirectContent()
Dim arialbasefont As BaseFont = arial.getBaseFont
Dim pg As Rectangle = document.getPageSize()

Dim pageNumberText As String = "Page " & writer.getPageNumber() & " of "
Dim timeStampText As String = Now.ToString
Dim pageNumberTextLength As Double = arialbasefont.getWidthPoint(pageNumberText, footerFontSize)
Dim timeStampTextLength As Double = arialbasefont.getWidthPoint(timeStampText, footerFontSize)
Dim pageNumberTextLeft As Double = 20
Dim templateLeft As Double = pageNumberTextLeft + pageNumberTextLength
Dim pageNumberTextBottom As Double = 5 + footerFontSize

cb.beginText()
cb.setFontAndSize(arialbasefont, footerFontSize)
cb.showTextAligned(PdfContentByte.ALIGN_LEFT, pageNumberText, pageNumberTextLeft, pageNumberTextBottom, 0)
cb.showTextAligned(PdfContentByte.ALIGN_LEFT, Now, pg.urx - (timeStampTextLength + 20), pageNumberTextBottom, 0)
cb.endText()
cb.addTemplate(tpl, templateLeft, pageNumberTextBottom)

End Sub

Для каждого ProjectID В массиве

                Dim rptRequestReportObj As New rptRequestReport2
rptRequestReportObj.Report(document, ProjectID)

document.newPage()
document.setPageCount(1)

Следующий идентификатор проекта

спросил(а) 2016-01-15T19:18:00+03:00 4 года, 9 месяцев назад
0
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема