4

我正在使用 ABCPDF 库的 AddImageUrl 函数并使页面呈现为 PDF 格式。但是我遇到了一个问题,链接(标签)没有在 PDF 链接中呈现,而是作为没有链接功能的普通文本呈现。我检查了 HTML 页面以确保页面上存在链接。

4

2 回答 2

10

我想通了。希望这将帮助遇到此问题的其他人。在生成 pdf 以使链接处于活动状态之前,您需要包含以下行。

theDoc.HtmlOptions.AddLinks = true;

于 2012-01-11T15:23:54.403 回答
-1

我们正在使用 ABCPDF.Net 版本 6 从 HTML 创建 PDF 文件。但是,除了那些在 HTML 中显示为 URL 的链接之外,即使 HtmlOptions.AddLinks 设置为 true,这些链接也不会生效。事实上,当它设置为 true 时,链接呈现的棕色背景在设置为 false 时不存在。这是我们使用 vb.net 创建 PDF 的代码

     Dim theID As Object
        Dim pageRect As String
        Dim Header As String = Nothing
        If SubBank.Length <> 0 Then
            If HttpContext.Current.Session("BankType") IsNot Nothing And (HttpContext.Current.Session("BankType") = 1 Or HttpContext.Current.Session("BankType") = 4) Then
                Header = "<br/><br/> <br/><br/><div class='bankname1' align='center'>" & SubBank & " </div><div style='float:right'><img src='" & getBaseUrl() & "/Images_Modern/SGPSMainLogo.png' /> </div>"
            Else
                Header = "<br/><br/> <br/><br/><div class='bankname1' align='center'>" & SubBank & " </div><div style='float:right'><img src='" & getBaseUrl() & "/Images_Modern/bankers_gps_logo_pdf.gif' /> </div>"
            End If

            If PeerGroup.Length <> 0 AndAlso HttpContext.Current.Session("Product_Id") = 1 Then
                Header &= "<div class='bankname2' align='center'>Vs&nbsp;&nbsp;&nbsp;" & PeerGroup & " </div>"
            End If
            strContent = Header & strContent
        End If

        Dim objAbc As New WebSupergoo.ABCpdf6.Doc
        objAbc.Rect.Inset(15, 15)
        CreateErrorText(Header)
        Dim ObjSet As New PDFSettings
        ObjSet.objAbc = objAbc
        ObjSet.OriWidth = objAbc.MediaBox.Width
        ObjSet.OriHeight = objAbc.MediaBox.Height

        objAbc.HtmlOptions.AddLinks = True
        objAbc.HtmlOptions.TargetLinks = True

        'objAbc.HtmlOptions.MaxAtomicImageSize = 100
        'objAbc.HtmlOptions.ImageQuality = 101
        ObjSet.Rotate(Orientation)
        'theID = objAbc.AddImageHtml(strContent, True, 0, False)
        'objAbc.SetInfo(theID, "/Rotate", "90")
        theID = objAbc.AddImageHtml(strContent)

        objAbc.Rendering.DotsPerInch = 96S
        pageRect = objAbc.Rect.String

        Do
            'theDoc.FrameRect
            If Not objAbc.Chainable(theID) Then Exit Do
            objAbc.Page = objAbc.AddPage()
            theID = objAbc.AddImageToChain(theID)

        Loop

        Dim i
        For i = 1 To objAbc.PageCount
            objAbc.PageNumber = i
            objAbc.Flatten()
        Next
        'added By yuvraj For NS Headder :17/04/2012
        If (strContent.IndexOf("NSHEADSTART") > -1) Then
            objAbc.HPos = 0.5
            objAbc.VPos = 0.5
            '  objAbc.Color.String = "0 255 0"
            objAbc.FontSize = 16
            For i = 1 To objAbc.PageCount
                objAbc.PageNumber = i
                objAbc.Rect.Pin = 0
                objAbc.Rect.String = "20 20 400 400"
                objAbc.HPos = 0.5
                objAbc.AddHtml(getHeadText(strContent))
                objAbc.Rect.Move(200, 500)
                objAbc.Rect.String = pageRect
                objAbc.HPos = 0
            Next

        End If
        'theDoc.Rect.Move  0, -50
        objAbc.HPos = 0
        objAbc.Save(PDFPath)
        objAbc.Clear()
        'Response.Redirect(".\PDF\manoj12.pdf")
        objAbc = Nothing
        theID = Nothinge
于 2018-05-10T09:27:28.950 回答