我在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()
答案 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()