插入一些文本后,iTextSharp 上缺少结束文本错误
Error end text missing on iTextSharp after some text inserts
我正在尝试使用 iTextSharp 创建 pdf,但在 pdf 上插入一些文本后,pdf 损坏并在 Pdf 上显示这个令人讨厌的弹出窗口 Reader(请参阅 link)
我还使用了另一个程序来检查错误问题是什么,似乎 iText 库在插入新文本时停止添加 begin/end 块
我使用的是最新版本的 iTextSharp (v.5.5.8.0)
这是我使用的简单代码
Sub Main()
Dim objPageSize As iTextSharp.text.Rectangle
Dim objDocument As Document
Dim objWriter As pdf.PdfWriter
objPageSize = New Rectangle(842, 595)
objDocument = New Document(objPageSize, 50, 50, 50, 50)
objWriter = PdfWriter.GetInstance(objDocument, New System.IO.FileStream("test.pdf", System.IO.FileMode.Create, System.IO.FileAccess.Write))
Call objDocument.Open()
objWriter.Open()
objWriter.DirectContent.BeginText()
For i As Integer = 0 To 85
Dim ct As ColumnText = New ColumnText(objWriter.DirectContent)
ct.SetSimpleColumn(1, i * 5, 100, 100, 0, Element.ALIGN_LEFT)
Dim phrase As Phrase = New Phrase("hello", FontFactory.GetFont(BaseFont.TIMES_ROMAN, BaseFont.CP1250, False, 4))
ct.SetText(phrase)
ct.Go()
Next
objWriter.DirectContent.EndText()
objDocument.Close()
objWriter.Close()
End Sub
它看起来像是库中的错误。
如有任何帮助,我们将不胜感激
谢谢!
好的,我自己找到了答案。
我将 post 放在这里,因为其他人可能会有所帮助。
你不需要打电话
objWriter.DirectContent.BeginText()
和
objWriter.DirectContent.EndText()
ColumnText class 为您完成
我正在尝试使用 iTextSharp 创建 pdf,但在 pdf 上插入一些文本后,pdf 损坏并在 Pdf 上显示这个令人讨厌的弹出窗口 Reader(请参阅 link)
我还使用了另一个程序来检查错误问题是什么,似乎 iText 库在插入新文本时停止添加 begin/end 块
我使用的是最新版本的 iTextSharp (v.5.5.8.0) 这是我使用的简单代码
Sub Main()
Dim objPageSize As iTextSharp.text.Rectangle
Dim objDocument As Document
Dim objWriter As pdf.PdfWriter
objPageSize = New Rectangle(842, 595)
objDocument = New Document(objPageSize, 50, 50, 50, 50)
objWriter = PdfWriter.GetInstance(objDocument, New System.IO.FileStream("test.pdf", System.IO.FileMode.Create, System.IO.FileAccess.Write))
Call objDocument.Open()
objWriter.Open()
objWriter.DirectContent.BeginText()
For i As Integer = 0 To 85
Dim ct As ColumnText = New ColumnText(objWriter.DirectContent)
ct.SetSimpleColumn(1, i * 5, 100, 100, 0, Element.ALIGN_LEFT)
Dim phrase As Phrase = New Phrase("hello", FontFactory.GetFont(BaseFont.TIMES_ROMAN, BaseFont.CP1250, False, 4))
ct.SetText(phrase)
ct.Go()
Next
objWriter.DirectContent.EndText()
objDocument.Close()
objWriter.Close()
End Sub
它看起来像是库中的错误。
如有任何帮助,我们将不胜感激
谢谢!
好的,我自己找到了答案。
我将 post 放在这里,因为其他人可能会有所帮助。
你不需要打电话 objWriter.DirectContent.BeginText() 和 objWriter.DirectContent.EndText()
ColumnText class 为您完成