ABCpdf不应用内联css样式

时间:2014-09-10 12:57:06

标签: c# css abcpdf abcpdf9

在我的aspx页面中,我有以下css的脚本

<style type="text/css">
        .subcontainer{margin: 0 auto; padding-top: 20px}
       .hide-val{display:none;}
    </style>

在浏览器中页面加载正常,不显示带有类hide-val的div,但是当我使用AddImageURL样式时没有应用。

Doc theDoc2 = new Doc();

            theDoc2.HtmlOptions.UseScript = true;
            theDoc2.HtmlOptions.Media = MediaType.Print;
            theDoc2.HtmlOptions.InitialWidth = 1048;

            //for multiple page
            theDoc2.Rect.Inset(10, 30);

            theDoc2.Page = theDoc2.AddPage();
            int theID2;
            theID2 = theDoc2.AddImageUrl(urlToHtmlPage);

            while (true)
            {
                theDoc2.FrameRect(); // add a black border
                if (!theDoc2.Chainable(theID2))
                    break;
                theDoc2.Page = theDoc2.AddPage();
                theID2 = theDoc2.AddImageToChain(theID2);
            }

            for (int i = 1; i <= theDoc2.PageCount; i++)
            {
                theDoc2.PageNumber = i;
                theDoc2.Flatten();
            }
            //end multipage 
            theDoc2.Save(HttpContext.Current.Server.MapPath("htmlimport.pdf"));
            theDoc2.Clear();

我见过很多像这样的问题,但我没有找到答案

如何在doc中添加css样式?

1 个答案:

答案 0 :(得分:1)

由于您指定了theDoc2.HtmlOptions.Media = MediaType.Print;,您是否尝试过标记@media print的css?

像这样:

<style type="text/css">
  @media print {
       .subcontainer{margin: 0 auto; padding-top: 20px}
       .hide-val{display:none;}
  }
</style>

或者,取出行theDoc2.HtmlOptions.Media = MediaType.Print;

我还没有证实这一点,但值得一试。