itextsharp: как добавить новую страницу и написать на ней?

в vb.net я заполнил первую страницу PDF-документа, как мне начать со второй страницы?


person Alex Gordon    schedule 21.12.2009    source источник


Ответы (2)


Не отмечайте это как ответ, это просто код gmcalab, преобразованный в VB для вашего удобства. Его пример довольно легко отвечает на ваш вопрос.

Dim document As New Document(PageSize.A4, 0, 0, 50, 50) 
Dim msReport As New System.IO.MemoryStream() 

Try 
    ' creation of the different writers 
    Dim writer As PdfWriter = PdfWriter.GetInstance(document, msReport) 

    ' we add some meta information to the document 
    document.AddTitle("My Title") 
    document.AddAuthor("Me") 
    document.Open() 

    For i As Integer = 1 To 5 
        document.NewPage() 
        Dim datatable As New iTextSharp.text.Table(3) 
        datatable.Padding = 2 
        datatable.Spacing = 0 
        Dim headerwidths As Single() = {6, 20, 32} 
        datatable.Widths = headerwidths 
        datatable.DefaultHorizontalAlignment = Element.ALIGN_LEFT 
        datatable.AddCell(i.ToString()) 
        datatable.AddCell("This is my name.") 
        datatable.AddCell("0123456789") 

        datatable.AddCell("No") 
        datatable.AddCell("Yes") 
        datatable.AddCell("No") 

        document.Add(datatable) 
    Next 
Catch e As Exception 
    Console.[Error].WriteLine(e.Message) 
End Try 

' we close the document 
document.Close() 

Response.Clear() 
Response.AddHeader("content-disposition", "attachment;filename=Export.pdf") 
Response.ContentType = "application/pdf" 
Response.BinaryWrite(msReport.ToArray()) 
Response.[End]() 
person jball    schedule 29.12.2009

person    schedule
comment
Строка 13 ответа gmcalab добавляет новую страницу, а строки с 14 по 28 добавляют контент на эту страницу. Строки 12 и 29 заставляют этот код повторяться 5 раз, демонстрируя, как это можно сделать произвольное количество раз. - person jball; 29.12.2009
comment
Приведенный выше пример находится в CSharp, и вы пометили свой вопрос с помощью vb.net. Однако преобразовать код из C # в VB.Net на удивление тривиально (см. Такие сайты, как developerfusion.com/tools/convert/csharp-to-vb), и вам следует потратить некоторое время на изучение синтаксиса CSharp в достаточном объеме, чтобы понять примеры, недоступные в VB.Net. Это не так сложно и избавит вас от многих головных болей в будущем. - person jball; 29.12.2009
comment
круто спасибо большое., вы можете порекомендовать мне сайт, который показывает различия - person Alex Gordon; 29.12.2009
comment
en.wikipedia.org/wiki/, особенно en.wikipedia.org/wiki/. Кроме того, просто сравните примеры в VB.Net и CSharp на MSDN и т.п., и вы почувствуете аналоги между ними. - person jball; 29.12.2009