Visual Basic .net iTextSharp以pdf格式创建方块

时间:2015-07-24 08:18:01

标签: .net vb.net pdf

我在Visual Studio 2010中工作,我必须在Visual Basic中创建PDF文件。我已经使用iTextSharp创建了PDF,但我有问题,因为我不知道如何创建像这样的广场□。我需要这个,因为我的程序应该创建卡片,其中包含候选人姓名和方格以标记您的选择。谢谢你的回答,这是我的代码:

        Dim pdfDoc As New Document()
        Dim pdfWrite As PdfWriter = PdfWriter.GetInstance(pdfDoc, New FileStream("Test.pdf", FileMode.Create))

        pdfDoc.Open()
        pdfDoc.Add(New Paragraph("□ Exampe Example"))

        pdfDoc.Close()

1 个答案:

答案 0 :(得分:1)

您需要确保使用支持Unicode的字体将其写入pdf。我使用" Arial Unicode MS "举个例子:

Private Function GetFont() As Font
    Dim fontLocation As String = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Fonts), "ARIALUNI.TTF")

    Dim baseFont As BaseFont = baseFont.CreateFont(fontLocation, baseFont.IDENTITY_H, baseFont.NOT_EMBEDDED)

    Return New Font(baseFont, 14, 0)
End Function

现在可以在您的pdf中正确显示:

    Dim pdfDoc As New Document()
    Dim pdfWrite As PdfWriter = PdfWriter.GetInstance(pdfDoc, New FileStream("Test.pdf", FileMode.Create))

    pdfDoc.Open()

    Dim f As Font = GetFont()

    pdfDoc.Add(New Paragraph("■ Exampe Example", f))
    pdfDoc.Add(New Paragraph("□ Exampe Example", f))

    pdfDoc.Close()