我们正在使用ABCPDF.Net版本5从HTML创建PDF文件。但是,即使HtmlOptions.AddLinks设置为true,链接也不会显示,除非那些链接在HTML中显示为URL。实际上,当它设置为true时,链接呈现为棕色背景,当它设置为false时不存在。以下是我们用于创建PDF(vb.net)的代码:
Dim oFile As Stream = New MemoryStream()
Dim objPDFInvoice As Doc = New Doc
With objPDFInvoice
Dim w As Double = .MediaBox.Width
Dim h As Double = .MediaBox.Height
Dim l As Double = .MediaBox.Left
Dim b As Double = .MediaBox.Bottom
.Rect.Left += 15
.Rect.Bottom += 15
.Rect.Width -= 15
.Rect.Height -= 15
.HtmlOptions.AddLinks = True
Dim theID As Integer = .AddImageUrl("file://" & sFileName, True, 800, True)
While True
If Not .Chainable(theID) Then
Exit While
End If
.Page = .AddPage()
theID = .AddImageToChain(theID)
End While
For iPage As Integer = 1 To .PageCount
.PageNumber = iPage
.Flatten()
Next
If .PageCount > 0 Then .Page = 1
.SetInfo(.Root, "/HtmlContent:Text", sBody.ToString)
.SetInfo(.Root, "/HtmlFilename:Text", "Certification" & ".pdf")
.Encryption.Type = 2
.Encryption.CanAssemble = False
.Encryption.CanChange = False
.Encryption.CanCopy = False
.Encryption.CanEdit = False
End With
objPDFInvoice.Save(oFile)
objPDFInvoice.Clear()
然后将oFile内存流作为电子邮件附件发送,但是为了进行测试,我将其保存到文件中。请注意,sBody是AddImageURL中使用的HTML文件内容的字符串表示形式。
知道为什么会这样吗?
提前致谢, 鲍里斯扎卡林
答案 0 :(得分:0)
当我们将应用程序从Win Server 2003移植到Win Server 2008时,这个问题出现了。
这不是直接原因,从IE8迁移到IE9导致链接上出现棕色背景色。
我们已通过升级到AbcPdf 8解决了这个问题。