ABCPDF не отображает ссылки

Я использую функцию AddImageUrl библиотеки ABCPDF и получаю отрисовку страниц в формате PDF. Но у меня возникла проблема, когда ссылки (теги) не отображаются в ссылках PDF, а представляют собой обычный текст без функции ссылки. Я проверил страницу HTML, чтобы убедиться, что ссылки существуют на странице.


person Gabbar    schedule 27.12.2011    source источник
comment
Нашел ответ на этот вопрос довольно быстро, поиграв с API. Все, что вам нужно сделать, это убедиться, что эта строка включена, если вы используете функцию AddImageUrl для PDF theDoc.HtmlOptions.AddLinks = true;   -  person Gabbar    schedule 27.12.2011


Ответы (2)


Я понял это. Надеюсь, это поможет кому-то еще, у кого есть эта проблема. Вам необходимо включить следующие строки перед созданием PDF-файла, чтобы сделать ссылки активными.

theDoc.HtmlOptions.AddLinks = true;

person Gabbar    schedule 11.01.2012

Мы используем ABCPDF.Net версии 6 для создания файла PDF из HTML. Однако ссылки не являются активными, за исключением тех, которые отображаются в виде URL-адресов в HTML, даже если для параметра HtmlOptions.AddLinks задано значение true. На самом деле, когда установлено значение true, ссылки отображаются с коричневым фоном, которого нет, когда установлено значение false. Вот код, который мы используем для создания PDF с помощью vb.net

     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
person ashish    schedule 10.05.2018