簡體   English   中英

頁面加載完成后,如何使用ABCpdf中的AddImageUrl生成pdf

[英]How I can generate the pdf using AddImageUrl from ABCpdf after the page is loaded complete

我想將網頁的縮略圖添加到pdf文檔中,

我這樣添加:

    Doc generatedoc = new Doc();
    generatedoc.HtmlOptions.UseScript = true;

    string urlToHtmlPage = "http://example.com?param1=30&param2=true";
    int generatedId = generatedoc.AddImageUrl(urlToHtmlPage);

    generatedoc.Save(HttpContext.Current.Server.MapPath("htmlimport.pdf"));
    generatedoc.Clear();

在url中,我發送了兩個參數,具體取決於頁面中的參數,為各種html標簽添加了一個類,例如:

<div class="cssClass <%=param2==true?"secondCssClass":""%>">some html tags</div>

要么

<span class="<%= param2==true?"secondCssClass":"" %>"> some text </span>

內在風格

<style type="text/css">
    .secondCssClass
    {
        display: none;
    }
</style>

pdf生成成功,但是secondCssClass未添加到我的標簽中,並且css不適用我嘗試設置較大的超時時間,但是css不適用

我這樣設置超時時間:

generatedoc.HtmlOptions.Timeout = 1000000;

要么

generatedoc.HtmlOptions.OnLoadScript = "(function(){ window.ABCpdf_go = false;
            setTimeout(function(){ window.ABCpdf_go = true; }, 1000000); })();";

或RenderWait()和RenderComplete()

   generatedoc.HtmlOptions.OnLoadScript = @"
    window.external.ABCpdf_RenderWait(); 
    window.external.ABCpdf_RenderComplete(true);";

但是無論如何,當我在瀏覽器css中加載url時,CSS並不適用嗎?

根據您對評論的答復,即使在瀏覽器中您也看到了該問題,這表明這不是ABCPDF問題。

我認為問題出在以下方面:

<div class="cssClass <%=param2==true?"secondCssClass":""%>">some html tags</div>

<span class="<%= param2==true?"secondCssClass":"" %>"> some text </span>

如果該代碼正是您正在運行的代碼中所包含的代碼,那么您需要對以下幾行進行調整:

  1. 訪問URL參數,您需要使用Request對象
  2. URL參數是文本,您的比較將其作為布爾值

代碼應如下:

<div class="cssClass <%= Request.QueryString("param2")=="true"?"secondCssClass":"" %>">some html tags</div>

<span class="<%= Request.QueryString("param2")=="true"?"secondCssClass":"" %>"> some text </span>

我建議您先通過ABCPDF對它進行測試,然后再在瀏覽器中對其進行測試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM